选择多个组中的重复项

时间:2016-02-01 23:07:13

标签: sql group-by

使用下表:

StoreId INT PRIMARY KEY, CustomerId INT, StoreName VARCHAR

我需要一个select语句来告诉我是否有任何CustomerId有重复的StoreName条目。

示例,给出此数据:

StoreId | CustomerId | StoreName
1       | 25         | "Store 6"
2       | 42         | "Downtown"
3       | 101        | "Store 22"
4       | 33         | "South Valley"
5       | 42         | "Store Five"
6       | 33         | "South Valley"
7       | 215        | "Downtown"

我需要一个返回

的查询
CustomerId | StoreName
33         | "South Valley"

因为33号客户有两家名为“South Valley”的商店。但是有两家名为“Downtown”的商店将不会出现在结果中,因为他们来自两个不同的客户。

如果可能,我不想使用光标或循环。我正在尝试使用SELECTGROUP BY找到一种方法。

提前致谢!

1 个答案:

答案 0 :(得分:1)

select
   CustomerId, StoreName
from tab
group by CustomerId, StoreName
having count(*) > 1