获取基于2列的重复记录

时间:2013-10-29 17:40:58

标签: mysql sql oracle

我有一张包含以下数据的表格(例如,ORDERS表格)

+-----+--------+---------+
| SNO | EMP_ID | ITEM_ID |
+-----+--------+---------+
|   1 |      5 |       2 |
|   2 |      5 |       2 |
|   3 |      6 |       2 |
|   4 |      6 |       3 |
+-----+--------+---------+

现在说我需要所有同时购买同一商品的员工ID。我怎么能这样做?

我正在尝试这个

SELECT O.EMP_ID FROM ORDERS O GROUP BY O.EMP_ID, O.ITEM_ID HAVING COUNT (*) > 1

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

SELECT O.EMP_ID 
FROM ORDERS O 
GROUP BY O.EMP_ID  
HAVING COUNT(distinct O.ITEM_ID) <> COUNT(*)