oracle按年龄段分组查询

select * from (
select nnd, count(*) as sumPeoples
from (select case
when age >= 1 and age <= 10 then
'1-10岁'
when age >= 11 and age <= 20 then
'11-20岁'
when age >= 21 and age <= 30 then
'21-30岁'
when age >= 31 and age <= 40 then
'31-40岁'
when age >= 41 and age <= 50 then
'41-50岁'
when age >= 51 and age <= 60 then
'51-60岁'
when age >= 61 and age <= 70 then
'61-70岁'
when age >= 71 and age <= 80 then
'71-80岁'
when age >= 81 and age <= 90 then
'81-90岁'
when age >= 91 and age <= 100 then
'91-100岁'
else
'未知'
end as nnd,
age
from (select xm,
nvl(substr(to_char(sysdate, 'YYYYMMDD'), 0, 4) -
substr(to_char(CSRQ, 'YYYYMMDD'), 0, 4),
0) age
from t_rs_employee
where school_id = 2)) hr_employee
group by nnd
) a order by nnd asc

posted on 2015-02-07 11:19  ziyi_ang  阅读(3612)  评论(0编辑  收藏  举报

导航