查找每个组中存在的GroupBy中的行

时间:2018-03-28 22:08:34

标签: sql

我有一个临时表#People,它包含这样的内容:

PersonnelId, TaskId
200          40
200          41
200          **42**
300          **42**
300          45
400          41
400          **42**
400          60

所以注意 42 存在于所有三组人员中。

如何为我编写一个查找42的查询?

1 个答案:

答案 0 :(得分:1)

此查询将获取所有personnelId中存在的taskid。

Select taskid
From tbl
Group by taskid
Having count(distinct PersonnelId) = 
  (select count(distinct PersonnelId) from tbl)