ซึ่งได้ query ข้อมูลใน SQL Server 2000 แล้วได้ผล ดังรูป
จากโค๊ด ดังนี้
create view vemp1 as
select firsname,lastname,stat,birth as 'วัน/เดือน/ปี เกิด',
case
when month(getdate())-month(birth) >= 0 then datediff(yy,birth,getdate())
when month(getdate())-month(birth) < 0 then datediff(yy,birth,dateadd(yy,-1,getdate()))
when datediff(month,birth,getdate())-(datediff(year,birth,getdate())*12) > 0
then datediff(month,birth,getdate())-(datediff(year,birth,getdate())*12)
End as age ,
case
when month(getdate())-month(birth) = 0 then month(getdate())-month(birth)
when month(getdate())-month(birth) > 0 then month(getdate())-month(birth)
when month(getdate())-month(birth) < 0 then (month(getdate())-month(birth))+12
End as Month
from empprofile
where stat = 1
----------------------------------------------
create view vemp2 as
select distinct(age) ,
case
when age < 18 then (select count(age) from vemp1 where age < 18)
when age between 18 and 20 then (select count(age) from vemp1 where age between 18 and 20 )
when age between 21 and 30 then (select count(age) from vemp1 where age between 21 and 30 )
when age between 31 and 40 then (select count(age) from vemp1 where age between 31 and 40 )
when age between 41 and 50 then (select count(age) from vemp1 where age between 41 and 50 )
when age > 50 then (select count(age) from vemp1 where age > 50)
end as amount,
case
when age < 18 then 'อายุน้อยกว่า 18 ปี'
when age between 18 and 20 then 'อายุระหว่าง 18 - 20 ปี'
when age between 21 and 30 then 'อายุระหว่าง 21 - 30 ปี'
when age between 31 and 40 then 'อายุระหว่าง 31 - 40 ปี'
when age between 41 and 50 then 'อายุระหว่าง 41 - 50 ปี'
when age > 50 then 'อายุมากกว่า 50 ปี'
end as Destcription
from vemp1
where age is not null
------------------------------------------------
select distinct amount,Destcription
from vemp2
where Destcription is not null