Tengo una consulta SQL donde uso Oracle CASE
para comparar si una columna de fecha es menos de o mayor que fecha actual. ¿Pero cómo uso esa declaración CASE
en una declaración GROUP BY
? Me gustaría contar los registros en cada caso.¿Cómo uso Group By en base a una declaración Case en 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
pero me da un error al intentar esto: ORA-00904
. ¿Alguna sugerencia?
http://stackoverflow.com/questions/268429/group-by-alias-oracle – manurajhada