On Fri, Dec 20, 2013 at 9:18 AM, Shaun Thomas <stho...@optionshouse.com>wrote:

> On 12/20/2013 09:59 AM, Alvaro Herrera wrote:
>
>  WITH moved AS (
>>         DELETE FROM src WHERE ..
>>         RETURNING *
>> ) INSERT INTO dst SELECT * FROM moved;
>>
>
> I know that's effectively an atomic action, but I'd feel a lot more
> comfortable reversing that logic so the delete is based on the results of
> the insert.
>
> WITH saved AS (
>     INSERT INTO dst
>     SELECT * FROM src WHERE ...
>     RETURNING *
> )
> DELETE FROM src
>  WHERE ...;
>
> I'll admit yours is cleaner, though. :)
>

That is a good idea. I didn't even realize that there was such a command,
so I'll definitely use those.

Reply via email to