我公司的人事管理表 HRMRAA (RAA079 退厂日期 RAA001 工号 RAA018 学历 RAA010 省份 RAA035 部门 RAA025 入职日期)
a.查询:查询在籍人员的各学历所占总人数的比例
结果格式:
学历 比例
大专 6%
职中 1%
……
b.查询来自四川、湖南、广东省的各男女人数
格式如下:
省份 男 女
四川 587 2587
广东 258 1457c.查询各部门的在籍贯的人数.并在最后一行进行汇总(格式如下)
部门 人数
ZL 30
SMS 100
…
….
总人数 8500d.在2011年度7月度的各部门的员工离职率(提示:7月度离职人员 / 7月末在人员在籍)
部门 离职率
ZL 0
CW 0.02
…
a.查询:查询在籍人员的各学历所占总人数的比例
结果格式:
学历 比例
大专 6%
职中 1%
……
b.查询来自四川、湖南、广东省的各男女人数
格式如下:
省份 男 女
四川 587 2587
广东 258 1457c.查询各部门的在籍贯的人数.并在最后一行进行汇总(格式如下)
部门 人数
ZL 30
SMS 100
…
….
总人数 8500d.在2011年度7月度的各部门的员工离职率(提示:7月度离职人员 / 7月末在人员在籍)
部门 离职率
ZL 0
CW 0.02
…
select raa018,ltrim(COUNT(*)*100./(select COUNT(*) from hrmraa))+'%' as 比例 from hrmraa
--b.表中差性别
select raa010,
sum(case when 性别='男' then 1 else 0 end)男,
sum(case when 性别='女' then 1 else 0 end)女
from hrmraa where raa010 in('四川','湖南','广东')
group by raa010
--c
select raa010,COUNT(*)人数 from hrmraa group by raa010
union all
select '总人数',COUNT(*) from hrmraa
--d
select raa035,SUM(case when convert(varchar(7),raa070,120)='2011-07' then 1 else 0 end)*1./COUNT(*)
from hrmraa group by raa035
raa035,
cast(SUM(case when convert(varchar(7),raa070,120)='2011-07' then 1 else 0 end)*1./COUNT(*) as dec(18,2))---这里精确一下
from
hrmraa
group by
raa035
--a查询
select 学历,
比例=count(1)/(select count(1) from HRMRAA)
from HRMRAA group by 学历--b查询
select 省份,
[男]=sum(case when 性别='男' then 1 else 0 end),
[女]=sum(case when 性别='女' then 1 else 0 end)
from HRMRAA where 省份 in('四川','湖南','广东') group by 省份--c查询
select 部门,
人数=count(1)
from HRMRAA group by 部门
union all
select '总人数'
count(1)
from HRMRAA