【发布时间】:2015-03-25 16:42:36
【问题描述】:
我需要从 功能。
为isnumeric()创建函数:
CREATE OR REPLACE FUNCTION isnumeric(text) RETURNS BOOLEAN AS $$
DECLARE x NUMERIC;
BEGIN
x = $1::NUMERIC;
RETURN TRUE;
EXCEPTION WHEN others THEN
RETURN FALSE;
END;
$$ LANGUAGE plpgsql IMMUTABLE;
我从中调用isnumeric() 函数的函数:
create or replace function tm(var text)
returns varchar as
$$
begin
if (select isnumeric(var))=t::BOOLEAN then
raise info 'Is numeric value';
else
raise info 'Not numeric';
end if;
end;
$$
language plpgsql;
调用函数:
select tm('1');
得到一个错误:
这里是错误详情:
ERROR: column "t" does not exist
LINE 1: SELECT (select isnumeric(var))=t::BOOLEAN
【问题讨论】:
-
你应该提到你拿了这个功能from this answer
标签: postgresql plpgsql postgresql-9.3 isnumeric