如何找到使用mysql具备所需技能的员工

时间:2017-11-05 16:01:20

标签: mysql sql

我有一个MySQL表Employee,它有两列:

empl_no   skill
========= =========================
1001      Java
1001      Python
1002      JavaScript
1003      C#
1003      Excel Macro
1001      C

如何使用SQL Select语句筛选出具有 ALL 列出的技能'Java','Python','C'的员工?

2 个答案:

答案 0 :(得分:3)

您可以使用in子句并拥有

select empl_no
from my_table 
where skill in ( 'Java', 'Python', 'C' )
group by empl_no
having count(distinct skill) = 3

答案 1 :(得分:1)

尝试此查询。

SELECT empl_no FROM employee 
WHERE skill IN ( 'Java', 'Python', 'C' )
GROUP BY empl_no HAVING COUNT(skill)=3;