Dne 09.10.2012 11:48, Craig Ringer napsal:
On 10/06/2012 08:45 AM, Liam Caffrey wrote:
Hi,

If I run a CTE does that materialize the resulting data in the same (or
a similar) way as if I created a temp table and referred to that
instead? Or does the CTE keep the set in memory?

Really good question, I too would be interested in this.

I'd expect it'd materialize to RAM if the result is within `work_mem`
but I'd love to know for sure.

Yes - it's using a tuplestore, and that's the default behavior. It stores the tuples in RAM until it reaches work_mem and then starts spilling the data
to disk. It's entirely transparent behavior.

Tomas


--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to