Postgresql PL/pgSQL:执行vs调用

Postgresql PL/pgSQL:执行vs调用,postgresql,function,plpgsql,procedure,Postgresql,Function,Plpgsql,Procedure,在处理从另一个过程调用过程与重复Postgres 13中的代码对性能的影响时,我发现您可以通过使用CALL或PERFORM调用其他过程 我在谷歌上搜索差异,但我发现唯一相似的是 它解决了PERFORMvs.EXECUTE和notPERFORMvs.CALL 有人知道有什么区别吗?(从PL/pgSQL过程调用过程时)应该使用哪一个命令?是执行的SQL命令,并在添加SQL过程时与Postgres 11一起添加。不能使用SELECT调用过程 是执行任何SELECT语句并通过替换SELECT关键字

在处理从另一个过程调用过程与重复Postgres 13中的代码对性能的影响时,我发现您可以通过使用
CALL
PERFORM
调用其他过程

我在谷歌上搜索差异,但我发现唯一相似的是

它解决了
PERFORM
vs.
EXECUTE
和not
PERFORM
vs.
CALL

有人知道有什么区别吗?(从PL/pgSQL过程调用过程时)应该使用哪一个命令?

是执行SQL命令,并在添加SQL过程时与Postgres 11一起添加。不能使用
SELECT
调用过程

是执行任何
SELECT
语句并通过替换
SELECT
关键字(包括普通调用)放弃结果的PL/pgSQL命令。它一直是PL/pgSQL的一部分

您不能
调用
函数,也不能
执行
过程。
您可以在PL/pgSQL代码块内的任何地方使用
PERFORM
选择
(无
进入

小提琴

相关的:


不能使用
perform
调用存储过程。调用过程的唯一方法是使用
call
。我意识到我使用的是一个空函数,而不是一个过程。谢谢