From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> |
---|---|
To: | Denis Bucher <dbucher(at)niftycom(dot)com> |
Cc: | PGSQL-SQL <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: Need help with embedded CASEs |
Date: | 2001-11-07 17:14:19 |
Message-ID: | 20011107091040.Q49204-100000@megazone23.bigpanda.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On Wed, 7 Nov 2001, Denis Bucher wrote:
>
> Hello !
>
> I came across a very hard SELECT and Postgres refuses it. If someone could
> help me it would be great !
>
> Here is a simplified version of the problem that I have :
>
> SELECT CASE WHEN '2001-11-07' = current_date THEN 't' ELSE 'f' END AS
> flag_today, CASE WHEN flag_today THEN current_time ELSE '00:00' END AS
> time_iftoday;
>
> Why doesn't it work ? Or how could I use the result of the CASE in another ?
My guess is because flag_today isn't a column really, it's an output
expression in the select list.
The simplified case could probably be written as:
select flag_today, case when flag_today then current_time else '00:00'
END AS time_iftoday from (select case when '2001-11-07'=current_date
then 't'::bool else 'f'::bool end as flag_today) intable;
From | Date | Subject | |
---|---|---|---|
Next Message | qradius | 2001-11-07 17:37:16 | help with function and quotes |
Previous Message | Stephan Szabo | 2001-11-07 17:07:49 | Re: update in rule |