postgresql if
- 作者: 段友大集合
- 来源: 51数据库
- 2020-09-24
首先确定你是在基于pgsql的function里面使用的这些句子,这是个完整的sql执行会产生一个function
CREATE OR REPLACE FUNCTION test()
RETURNS void AS
$BODY$
BEGIN
if true then
perform (select now());
end if;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
注意,postgresql 中,对于select要不用perform函数来执行一个忽略结果的查询,要不用select in取得select函数,而不允许select语句直接出现在函数体重
如果要取得select now()的内容则可以这样写
CREATE OR REPLACE FUNCTION testwm()
RETURNS timestamp AS
$BODY$
DECLARE
nowtime timestamp;
BEGIN
if true then
select now() into nowtime;
end if;
return nowtime;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
这个函数返回select 的now()的结果
我是来看评论的
CREATE OR REPLACE FUNCTION test()
RETURNS void AS
$BODY$
BEGIN
if true then
perform (select now());
end if;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
注意,postgresql 中,对于select要不用perform函数来执行一个忽略结果的查询,要不用select in取得select函数,而不允许select语句直接出现在函数体重
如果要取得select now()的内容则可以这样写
CREATE OR REPLACE FUNCTION testwm()
RETURNS timestamp AS
$BODY$
DECLARE
nowtime timestamp;
BEGIN
if true then
select now() into nowtime;
end if;
return nowtime;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
这个函数返回select 的now()的结果
我是来看评论的
推荐阅读