Re: Repeat execution of stable expressions - Mailing list pgsql-performance

From Peter van Hardenberg
Subject Re: Repeat execution of stable expressions
Date
Msg-id CAAcg=kX-fhq2vUmNPQHDcD9fA9ciN=X__SkT6MtueXFXNXAUtw@mail.gmail.com
Whole thread Raw
In response to Repeat execution of stable expressions  (Merlin Moncure <mmoncure@gmail.com>)
Responses Re: Repeat execution of stable expressions
List pgsql-performance
On Mon, Mar 5, 2012 at 3:15 PM, Merlin Moncure <mmoncure@gmail.com> wrote:
> I've complained many times that
> select (f()).*;
>
> will execute f() once for each returned field of f() since the server
> essentially expands that into:
>
> select f().a, f().b;
>

oh, this is why we expand rows inside a WITH statement.

it should probably be fixed, but you should find something like

WITH fn AS SELECT f(),
SELECT (fn).a, (fn).b

will make your life better

--
Peter van Hardenberg
San Francisco, California
"Everything was beautiful, and nothing hurt." -- Kurt Vonnegut

pgsql-performance by date:

Previous
From: Merlin Moncure
Date:
Subject: Repeat execution of stable expressions
Next
From: Yeb Havinga
Date:
Subject: Re: SSD and RAID