Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 根据查询结果将值设置为变量(PL/pgSQL样式)_Postgresql_Plpgsql_Postgresql 9.2 - Fatal编程技术网

Postgresql 根据查询结果将值设置为变量(PL/pgSQL样式)

Postgresql 根据查询结果将值设置为变量(PL/pgSQL样式),postgresql,plpgsql,postgresql-9.2,Postgresql,Plpgsql,Postgresql 9.2,我需要做的是使用EXECUTING查询为变量设置一个值 在纯SQL风格中,我可以执行以下操作: // here declaring function and etc... DECLARE cnt INTEGER; EXECUTE 'SELECT COUNT(*) FROM t' INTO cnt; 如何以PL/pgSQL函数的形式实现相同的功能?以下伪代码的正确语法是什么?(以下显然是错误的语法) 不确定“plpgsql风格”是什么意思。您显示的语法非常好,如中所示。我认为您需要的是: cn

我需要做的是使用
EXECUTING
查询为变量设置一个值

在纯SQL风格中,我可以执行以下操作:

// here declaring function and etc...
DECLARE cnt INTEGER;

EXECUTE 'SELECT COUNT(*) FROM t' INTO cnt;
如何以PL/pgSQL函数的形式实现相同的功能?以下伪代码的正确语法是什么?(以下显然是错误的语法)


不确定“plpgsql风格”是什么意思。您显示的语法非常好,如中所示。

我认为您需要的是:

cnt := COUNT(*) FROM t;

您可以使用选择进入

DECLARE cnt INTEGER;
SELECT INTO cnt count(*) FROM t;
在“plpgsql样式”中,我的意思是
变量:=
,但正如所见,此语法不适用于处理动态命令。谢谢。我相信是选择计数(*)进入cnt
DECLARE cnt INTEGER;
SELECT INTO cnt count(*) FROM t;