Re: BUG #15462: WITH ORDINALITY and CTEs don't work - Mailing list pgsql-bugs

From hubert depesz lubaczewski
Subject Re: BUG #15462: WITH ORDINALITY and CTEs don't work
Date
Msg-id 20181026113426.ddbpdbrh6eizxhxh@depesz.com
Whole thread Raw
In response to BUG #15462: WITH ORDINALITY and CTEs don't work  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On Fri, Oct 26, 2018 at 10:55:57AM +0000, PG Bug reporting form wrote:
> CTEs don't play nicely together with 'WITH ORDINALITY':

Sure they do.

> This is working:
> SELECT * FROM generate_series(4,1,-1) WITH ORDINALITY;
> WITH a AS (SELECT * FROM generate_series(4,1,-1) )
> SELECT * FROM a;
> 
> whereas this yields syntax error (42601)
> 
> WITH a AS (SELECT * FROM generate_series(4,1,-1) )
> SELECT * FROM a WITH ORDINALITY;


This is because "with ORDINALITY" is for function call, not for any
table query.

So the correct syntax would be:

WITH a AS (SELECT * FROM generate_series(4,1,-1) WITH ORDINALITY) SELECT * FROM a;

depesz


pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #15462: WITH ORDINALITY and CTEs don't work
Next
From: Jeff Janes
Date:
Subject: Re: BUG #15459: no connection to the server