Hey everyone, As you know, Postgres currently supports SQL:1999 recursive common table expressions, using WITH RECURSIVE. However, Postgres does not allow more than one recursive self-reference in the recursive term. This restriction seems to be unnecessary.
In this mail, I'd like to propose a patch that removes this restriction, and therefore allows the use of multiple self-references in the recursive term. After the patch: WITH RECURSIVE t(n) AS ( VALUES(1) UNION ALL SELECT t.n+f.n FROM t, t AS f WHERE t.n < 100 ) SELECT * FROM t; n ----- 1 2 4 8 16 32 64 128 (8 rows) This feature deviates only slightly from the current WITH RECURSIVE, and requires very little changes (~10 loc). Any thoughts on this? -- Denis Hirn
0001-Allow-multiple-recursive-self-references.patch
Description: Binary data