Using case expressions in update set clause

From: "Chris Velevitch" <chris(dot)velevitch(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Using case expressions in update set clause
Date: 2007-10-15 05:33:00
Message-ID: b0a3bf780710142233rfe8f1e6ge9c49462a035f733@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I just want to clarify that the following will always behave the way I
think it's supposed to behave:-

update tableA
set date_field = case when date_field is null then some_date
else date_field end;

If the current value of date_field for the current record is null then
set the date_field with some_date value otherwise keep the current
value of date_field.

Note: in the actual situation there'll be other fields that will
always be updated in addition to this one field that needs to be
conditionally updated.

Chris
--
Chris Velevitch
Manager - Sydney Flash Platform Developers Group
m: 0415 469 095
www.flashdev.org.au

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tomasz Ostrowski 2007-10-15 07:10:27 Re: RES: 8.2.4 selects make applications wait indefinitely
Previous Message Ned Lilly 2007-10-15 04:09:01 Re: reporting tools