Re: [PATCHES] WITH RECUSIVE patches 0717

From: Tatsuo Ishii <ishii(at)postgresql(dot)org>
To: david(at)fetter(dot)org
Cc: ishii(at)postgresql(dot)org, tgl(at)sss(dot)pgh(dot)pa(dot)us, er(at)xs4all(dot)nl, pgsql-patches(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org, y-asaba(at)sraoss(dot)co(dot)jp
Subject: Re: [PATCHES] WITH RECUSIVE patches 0717
Date: 2008-07-21 01:13:58
Message-ID: 20080721.101358.68047354.t-ishii@sraoss.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

> On Mon, Jul 21, 2008 at 08:19:35AM +0900, Tatsuo Ishii wrote:
> > > > Thus I think we should avoid this kind of ORDER BY. Probably we should
> > > > avoid LIMIT/OFFSET and FOR UPDATE as well.
> > >
> > > What of index-optimized SELECT max(...) ?
> >
> > Aggregate functions in a recursive term is prohibited by the
> > standard. For example,
> >
> > WITH RECURSIVE x(n) AS (SELECT 1 UNION ALL SELECT max(n) FROM x)
> > SELECT * FROM x;
> >
> > produces an error.
>
> On the other side of UNION ALL, it's OK, right? For example,
>
> WITH RECURSIVE x(n) AS (
> SELECT max(i) FROM t
> UNION ALL
> SELECT n+1 FROM x WHERE n < 20
> )

Yes, aggregate functions in the non-recursive term is allowed by the
standard.
--
Tatsuo Ishii
SRA OSS, Inc. Japan

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Radek Strnad 2008-07-21 01:15:56 Re: [WIP] collation support revisited (phase 1)
Previous Message David Fetter 2008-07-21 00:00:05 Re: [PATCHES] WITH RECUSIVE patches 0717

Browse pgsql-patches by date

  From Date Subject
Next Message Stephen Frost 2008-07-21 01:18:29 Re: pg_dump additional options for performance
Previous Message David Fetter 2008-07-21 00:00:05 Re: [PATCHES] WITH RECUSIVE patches 0717