在编写函数时是否可以将变量声明为日期范围数据类型?
我在n#34处或附近收到语法错误; daterange"对于以下内容:
CREATE OR REPLACE FUNCTION fn_example (p1 daterange, p2 integer, p3 text)
RETURNS integer as $value$
DECLARE
variable1 daterange := (SELECT...)
答案 0 :(得分:0)
你可以这样做:
create or replace function test()
returns void as
$Body$
Declare
var1 daterange := (SELECT '(2010-01-01,2010-01-05)'::daterange);
Begin
RAISE INFO '%',var1;
end;
$Body$
language plpgsql;
SELECT test()
OUTPUT :
[2010-01-02,2010-01-05)
了解更多信息rangetypes
答案 1 :(得分:0)
似乎在创建功能 LANGUAGE sql 引起了这个问题。当我把它改成 LANGUAGE plpgsql 日期范围被识别。抱歉初学者错误,LANGUAGE sql不支持变量。