SQL服务器,获取同时具备两种技能的记录

SQL Server, get record which having both skills

我有一名员工 table 和一项技能 table。

在技能 table 中,我有条目 luke

empid    skills
---------------
 1       C#
 1       PHP
 2       C#
 2       Java

现在我想要所有同时具有 C# 和 Java 的员工 ID。

一个选项由员工汇总并断言 C# 和 Java 都作为技能存在。

SELECT empid
FROM employee
WHERE skills IN ('C#', 'Java')
GROUP BY empid
HAVING COUNT(DISTINCT skills) = 2;

Demo