Mam zapytanie SQL, w którym używam Oracle CASE
, aby porównać, czy kolumna z datą jest mniejsza niż lub większa niż aktualna data. Ale w jaki sposób mogę użyć tej CASE
-zakresu w GROUP BY
? Chciałbym policzyć zapisy w każdym przypadku.Jak korzystać z Group By na podstawie instrukcji Case w Oracle?
E.g.
select
(case
when exp_date > sysdate then 1
when exp_date <= sysdate then 2
else 3
end) expired, count(*)
from mytable
group by expired
Ale pojawia się błąd podczas próby: ORA-00904
. Jakieś sugestie?
http://stackoverflow.com/questions/268429/group-by-alias-oracle – manurajhada