oracle数据库根据年龄段分组查询每组的人数

     假如数据库表的结构:

name age
张三 18
李四 38
王五 65
select case 
    when age between 18 and 29 then '青年' 
    when age between 30 and 59 then '中年' 
    when age>=60 then '老年' end as 年龄段,
count(*) as 人数 
from test
group by case 
    when age between 18 and 29 then '青年' 
    when age between 30 and 59 then '中年' 
    when age>=60 then '老年' 
end;

获得的结果:

  年龄段 人数
1 青年 1
2 中年 1
3 老年 1

 

猜你喜欢

转载自my.oschina.net/patch/blog/1800123