我需要做的是使用EXECUTING
查询为变量设置一个值。
在纯SQL风格中,我可以执行以下操作:
// here declaring function and etc...
DECLARE cnt INTEGER;
EXECUTE 'SELECT COUNT(*) FROM t' INTO cnt;
如何以PL / pgSQL函数的形式实现相同的功能?以下伪代码的正确语法是什么? (以下显然是错误的语法)
cnt := EXECUTE ( 'SELECT COUNT(*) FROM t' ) ;
答案 0 :(得分:16)
我认为你在寻找的是:
cnt := COUNT(*) FROM t;
答案 1 :(得分:6)
您可以使用SELECT INTO
DECLARE cnt INTEGER;
SELECT INTO cnt count(*) FROM t;
答案 2 :(得分:3)
不确定“plpgsql样式”是什么意思。您显示的语法完全正常,如documentation中所示。