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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.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:我需要在CTE中返回任何内容吗?_Postgresql_Return - Fatal编程技术网

PostgreSQL:我需要在CTE中返回任何内容吗?

PostgreSQL:我需要在CTE中返回任何内容吗?,postgresql,return,Postgresql,Return,我曾经听说CTE(带有语句)需要返回一些东西。否则,它可能不会被执行 我有以下CTE简化结构: WITH selectA AS ( SELECT ... ), insertA AS ( INSERT INTO ... -- selecting something from selectA RETURNING ... ), insertB AS ( INSERT INTO ... -- selecting something from select

我曾经听说CTE(带有语句)需要返回一些东西。否则,它可能不会被执行

我有以下CTE简化结构:

WITH
selectA AS (
    SELECT ...
),
insertA AS (
    INSERT INTO ...
    -- selecting something from selectA
    RETURNING ...
),
insertB AS (
    INSERT INTO ... 
    -- selecting something from selectA and insertA
    -- HERE no RETURNING!
),
selectB AS (
    SELECT ...
    -- selecting something from selectA and insertA
),
insertForms AS (
    INSERT INTO ...
    -- selecting something from selectB
    -- HERE no RETURNING!
),
insertFormData AS (
    INSERT INTO ...
    -- selecting something from selectB
    -- HERE no RETURNING!
)
SELECT ...
    -- selecting something from insertA and selectB
它的工作,但我想知道我是否击中任何角落的情况下,导致所有的CTE零件得到执行。 在PostgreSQL文档中,我没有找到一个明确的提示,说明CTE中是否需要返回部件

有人对此有好的想法吗? 非常感谢

“但我想知道我是否遇到了任何紧急情况”——这种行为有充分的记录

如果省略RETURNING,则语句仍会执行,但它不会生成输出,因此主查询无法将其作为表引用

“但我想知道我是否遇到了任何紧急情况”——这种行为有充分的记录

如果省略RETURNING,则语句仍会执行,但它不会生成输出,因此主查询无法将其作为表引用


谢谢。我怎么会错过呢谢谢。我怎么会错过呢