数据库表查询问题

来源:百度知道 编辑:UC知道 时间:2024/04/29 02:07:40
我有两张表,员工档案表
(员工号,部门号,部门名称)
考勤记录表
(工作状态 0 上岗, 员工号,考勤时间)

查看
部门名称,在岗员工人数,不在岗员工人数 ,各部门总人数

在线等了。。

假设你的工作状态:1在岗,0不在岗

select
c.部门名称,
sum(case when c.工作状态=1 then 1 else 0 end) as '在岗人员人数',
sum(case when c.工作状态=0 then 1 else 0 end) as '不在岗人员人数',
count(*) as '部门总人数'
from
(
select *
from 员工档案表 a inner join 考勤记录表 b
on a.员工号=b.员工号
)
as c
group by c.部门名称