On Sat, Nov 13, 2010 at 05:23:34PM +0200, Marko Tiikkaja wrote:
> On 2010-11-13 5:08 PM +0200, Tom Lane wrote:
> >Marko Tiikkaja<marko.tiikkaja@cs.helsinki.fi> writes:
> >>On 13 Nov 2010, at 15:41, David Fetter<david@fetter.org> wrote:
> >>>Similarly, if a normal CTE called a data-changing function but
> >>>was nevertheless not referred to, it would still run.
> >
> >>Actually, it wouldn't.
> >
> >Indeed, and that was considered a feature when we did it. I think
> >that having wCTEs behave arbitrarily differently on this point
> >might be a bad idea.
>
> So these queries would behave differently?
>
> WITH t AS (DELETE FROM foo RETURNING *) SELECT 1 WHERE false;
>
> WITH t AS (DELETE FROM foo RETURNING *) SELECT 1 FROM t LIMIT 0;
No.
Cheers,
David.
--
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter
Skype: davidfetter XMPP: david.fetter@gmail.com
iCal: webcal://www.tripit.com/feed/ical/people/david74/tripit.ics
Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate