WITH RECURSIVE patches 0803

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

WITH RECURSIVE patches 0803

Tatsuo Ishii-4
Hi,

Included are the latest WITH RECURSIVE patches against CVS HEAD.
The main differences from previous patches include:

- Allow multiple query names (mutual recursion is not still allowed)

  These are some examples from the regression test:

WITH RECURSIVE
    x(id) AS (SELECT * FROM y UNION ALL SELECT id+1 FROM x WHERE id < 5),
    y(id) AS (values (1))
 SELECT * FROM x;

WITH RECURSIVE
   x(id) AS
     (SELECT 1 UNION ALL SELECT id+1 FROM x WHERE id < 3 ),
   y(id) AS
     (SELECT * FROM x UNION ALL SELECT * FROM x),
   z(id) AS
     (SELECT * FROM y UNION ALL SELECT id+1 FROM z WHERE id < 10)
 SELECT * FROM z;

- Fix some cases where target list has subquries

WITH RECURSIVE t(id) AS (
SELECT (VALUES(1))
        UNION ALL
SELECT id+1 FROM t WHERE id < 5
)
SELECT * FROM t;

Remaining works:

1) write sgml docs

2) write README

Currently I'm writing 2) based on the one posted before.

BTW, I'm traveling to the United States from Aug 4 to Aug 12. I'm
going to join Linux World, PGDay and pgpool party at Bruce's. I hope
to meet many community poeple soon!
--
Tatsuo Ishii
SRA OSS, Inc. Japan


--
Sent via pgsql-patches mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-patches

recursive_query.patch.gz (41K) Download Attachment