If I have a case expression is there a way it does not work as a waterfall?
For example if I have the following dataset:
group value --------------- derek 5 cait 1 david 2 denver 3
Is there a way I can show the following results
CASE WHEN group like 'd%' then d WHEN group like 'de% then de ELSE other
To show
group value -------------- d 10 de 8 other 3
Right now it shows as
group value -------------- d 10 other 2
Advertisement
Answer
You can use a left join
instead:
select coalesce(which, 'other'), sum(t.value) from t left join (values ('d%', 'd'), ('de%', 'de') ) v(pattern, which) on t.group like v.pattern group by which;