Re: Return select statement with sql case statement

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Ron <ronljohnsonjr(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Return select statement with sql case statement
Date: 2018-07-04 22:08:37
Message-ID: 26b7bb4e-b9cf-1843-28e5-c81ef7b3f64f@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 07/04/2018 03:03 PM, Ron wrote:
> On 07/04/2018 10:32 AM, hmidi slim wrote:
>> Actually, I need the use of case because based on the
>> numberOfPremiumDays there are different type of treatment:
>> select numberOfPremiumDays
>>             case  when numberOfPremiumDays = date_part('day',
>> ('2018-11-05'::timestamp) - ('2018-11-01'::timestamp)) then
>>                 select product_id,
>>                 premium_price,
>>                 period_price
>>                 from product
>>                 where occupation_type_id = 1
>>                 group by product_id, occupation_type_id
>>            else
>>                 select product_id,
>>                 classic_price,
>>                 period_price
>>                 from product1
>>                 where occupation_type_id = 1
>>                 group by product_id, occupation_type_id
>>
>
> Then try:
> select product_id,
> case when numberOfPremiumDays = date_part('day',
> ('2018-11-05'::timestamp) - ('2018-11-01'::timestamp)) then
>            premium_price
>        else
>            period_price
>        end as the_price
> from product
> where occupation_type_id = 1
> order by product_id, occupation_type_id

The issue with the above is that table changes from product to product1
in the OP's desired behavior so the price switch alone will not work:(

>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ron 2018-07-04 22:18:33 Re: Return select statement with sql case statement
Previous Message Ron 2018-07-04 22:03:55 Re: Return select statement with sql case statement