Is "WITH RECURSIVE" limited to the first position of CTEs by design? - Mailing list pgsql-general

From Kirk Wolak
Subject Is "WITH RECURSIVE" limited to the first position of CTEs by design?
Date
Msg-id CACLU5mRRGgoM5Lg7WJbgt2n7JsZRaPiN9c9-UUFmuGPPFZvC5g@mail.gmail.com
Whole thread Raw
Responses Re: Is "WITH RECURSIVE" limited to the first position of CTEs by design?
List pgsql-general
Team,
  This was strange.  I wanted to set up a CTE that would FEED my recursive query.
And also feed the results filtering...

These are the most trivial examples.  The second one results in a syntax error.  Which implies that:
1) There can only be one recursive CTE at the same level?
2) It must be the FIRST CTE?

Example:
WITH RECURSIVE CTE1 AS (select 2 UNION ALL SELECT 0),
CTE2 AS (select 1 UNION ALL SELECT 0) select 3 ;

-- This does not work:

WITH CTE1 AS (select 2 UNION ALL SELECT 0),
RECURSIVE CTE2 AS (select 1 UNION ALL SELECT 0)
SELECT 3;
--> ERROR:  syntax error at or near "CTE2"

Thanks in advance...

Kirk

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Issue in compiling postgres on latest macOS 14.1.1
Next
From: Shaik Mohammad Mujeeb
Date:
Subject: Re: Issue in compiling postgres on latest macOS 14.1.1