pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Thomas Kellerer <spam_eater@gmx.net>
To: pgsql-sql@postgresql.org
Subject: Combining several CTEs with a recursive CTE
Date: Tue, 20 Sep 2011 11:58:20 +0200
Message-ID: <j59o2m$dn1$1@dough.gmane.org> (raw)

Hello all,

this is more a "just curious" question, rather than a real world problem.

We can combine several CTEs into a single select using something like this:

WITH cte_1 as (
    select ....
),
cte_2 as (
    select ...
    where id (select some_col from cte_1)
)
select *
from cte_2;


But this does not seem to work when a recursive CTE is involved


WITH cte_1 as (
    select ....
),
recursive cte_2 as (
    select ...
    where id (select some_col from cte_1)

    union all

    select ...
)
select *
from cte_2;

This throws an error: syntax error at or near "cte_2"

I'm just wondering if this is intended behavioury, simply not (yet) implemented or even invalid according to the standard? I didn't find any reference that it's not allowed in the manual.

Regards
Thomas





view thread (3+ messages)  latest in thread

Message-ID: <j59o2m$dn1$1@dough.gmane.org>
Permalink:  ../j59o2m$dn1$1@dough.gmane.org/
Also on:    postgresql.org/message-id/j59o2m$dn1$1@dough.gmane.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: spam_eater@gmx.net
  Subject: Re: Combining several CTEs with a recursive CTE
  In-Reply-To: <j59o2m$dn1$1@dough.gmane.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox