oracle 根据数值范围分组
SELECT grp, COUNT(1) FROM ( SELECT CASE WHEN value < 3 THEN 'LessThan3' WHEN value >= 3 AND value < 5 THEN '3_5' WHEN value >= 5 THEN 'GreaterThan5' ELSE 'null' END AS grp FROM table ) GROUP BY grp;
SELECT grp, COUNT(1) FROM ( SELECT CASE WHEN value < 3 THEN 'LessThan3' WHEN value >= 3 AND value < 5 THEN '3_5' WHEN value >= 5 THEN 'GreaterThan5' ELSE 'null' END AS grp FROM table ) GROUP BY grp;