Re: Need help with embedded CASEs

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;

In response to

Browse pgsql-sql by date

  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