我有两张桌子。部门如下
ID DName
1 IT
2 HR
3 Admin
员工如下
id fname departmentid
1 Mary 2
2 Rahul 2
3 Amit 3
4 Vivek 1
5 Preetam 1
6 Mangesh 1
7 Mary 1
观察员工表中有两条Mary(id 1和7)记录。现在我想得到员工姓名的结果以及是否在人力资源部门工作。预期产出如下。
fname WorksInHR
Mary Y
Rahul Y
Amit N
Vivek N
Preetam N
Mangesh n
我如何在SQL2012中实现这一目标?
答案 0 :(得分:0)
以下是执行此操作的一种方法:
select e.fname,
(case when sum(case when d.dname = 'HR' then 1 else 0 end) > 0
then 'Y' else 'N'
end) as WorksInHR
from employee e join
department d
on e.departmentid = d.id
group by e.fname;