On Sat, Oct 4, 2008 at 5:22 PM, Tom Lane <[EMAIL PROTECTED]> wrote: > > that Oracle chooses to treat WITH-queries as if they were plain > sub-selects if they're non-recursive and only referenced once. > That is, Oracle would rewrite the above into > > SELECT * FROM ( SELECT * FROM foo ) AS q WHERE key = 42; > > and then flatten the sub-select and optimize normally. It would > not be hard to make Postgres do the same, but then we would lose > some guarantees about predictable execution of volatile functions. > [...] > > Any thoughts on what to do? One possibility is to flatten only > if the subquery doesn't contain any volatile functions. >
maybe i'm missing something but AFAIR postgres will not try to optimize (push down/pull up) if it see any volatile function. -- Atentamente, Jaime Casanova Soporte y capacitación de PostgreSQL AsesorÃa y desarrollo de sistemas Guayaquil - Ecuador Cel. +59387171157 -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers