Корректный Select
Программисты, подскажите, как правильно составить select для задачи
Вывести в отдельный столбец поле offer_name по каждому клиенту из таблицы customer_hist и заполнить его для клиентов со средними начислениями за первый квартал более 150 и общей суммой налогов за второй квартал больше 100 по следующему правилу:
- с продуктом 34 и service_type 1 - подключи опцию Bonus - с продуктом 76 и service_type 2 - подключи опцию Travel - с продуктом 23 и service_type 2 - подключи опцию Cashback - остальным - подключи опцию Cars.
Ответы (1 шт):
Автор решения: dzhukov
→ Ссылка
Попробуйте так, может чуть докрутить придется. Без данных сложно проверить
select
case
when Product=34 and service_type=1 then 'Bonus'
when Product=76 and service_type=2 then 'Travel'
when Product=23 and service_type=2 then 'Cashback'
else 'Cars'
end offer_name
,*
from Customer_hist ch
where ch.Customer in (
select ct.Customer from Customer_taxes ct
group by Customer, datepart (qq, Table_month)
having avg(Taxes) >case datepart (qq, Table_month) when 1 then 150 when 2 then 100 end
)
