From: Tom Lane Date: Tue, 19 Nov 2019 19:43:37 +0000 (-0500) Subject: Doc: clarify use of RECURSIVE in WITH. X-Git-Tag: REL_13_BETA1~1159 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5b805886ca11d5d74217ab1f12395ad54507d4d5;p=thirdparty%2Fpostgresql.git Doc: clarify use of RECURSIVE in WITH. Apparently some people misinterpreted the syntax as being that RECURSIVE is a prefix of individual WITH queries. It's a modifier for the WITH clause as a whole, so state that more clearly. Discussion: https://postgr.es/m/ca53c6ce-a0c6-b14a-a8e3-162f0b2cc119@a-kretschmer.de --- diff --git a/doc/src/sgml/ref/select.sgml b/doc/src/sgml/ref/select.sgml index 06d611b64c2..691e4028030 100644 --- a/doc/src/sgml/ref/select.sgml +++ b/doc/src/sgml/ref/select.sgml @@ -273,6 +273,14 @@ TABLE [ ONLY ] table_name [ * ] that are earlier in the WITH list. + + When there are multiple queries in the WITH + clause, RECURSIVE should be written only once, + immediately after WITH. It applies to all queries + in the WITH clause, though it has no effect on + queries that do not use recursion or forward references. + + The primary query and the WITH queries are all (notionally) executed at the same time. This implies that the effects of