Re: when timestamp is null
mikeo <mikeo@spectrumtelecorp.com>
From: mikeo <mikeo@spectrumtelecorp.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-general@postgresql.org
Date: 2000-07-12T20:56:20Z
Lists: pgsql-general
thank you very much, that worked wonderfully. i didn't even think about the end date being null. mikeo At 04:16 PM 7/12/00 -0400, Tom Lane wrote: >mikeo <mikeo@spectrumtelecorp.com> writes: >> i want to update rows of a table where the column defined >> as type timestamp is null. > >> update cust set cust_svc_start_dt = cust_svc_end_dt -1 >> where cust_svc_start_dt is null; > >> ERROR: Unable to convert null timestamp to date > >I suspect the problem here is that cust_svc_end_dt is also null in those >records, or some of them anyway, and the expression >"cust_svc_end_dt::date - 1" is what's failing. > >IMHO it's a bug that the current implementation of timestamp-to-date >kicks out an error for a null timestamp; it should just play nice and >return a null date. (This is already fixed for 7.1, BTW.) > >In the meantime you could do something with a CASE expression to >substitute an appropriate result when cust_svc_end_dt is null: > >UPDATE cust SET cust_svc_start_dt = CASE > WHEN cust_svc_end_dt IS NULL THEN whatever > ELSE cust_svc_end_dt -1 > END >WHERE ... > > regards, tom lane >