用于查找重复客户的SQL查询

时间:2014-09-22 03:56:18

标签: sql sql-server relational-division

在[orders]表中,某些行对于电子邮件列具有相同的值,这意味着它们是重复客户。

prodid   | email
---------|---------------------
123      | test@test.com
456      | hi@there.com
789      | test@test.com
...

我要做的是传递给查询2 prodid' s(例如:123和789),结果应该是这两个prodid的电子邮件地址。

我应该使用什么SQL语句来查找这些行?

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

SELECT Email FROM yourTable 
GROUP BY email
HAVING COUNT(*) > 1

尝试分组并拥有

答案 1 :(得分:2)

您可以使用intersect来获取两者之间通用的电子邮件。

select email from tableA where prodid in ( 123)
intersect
select email from tableA where prodid in (456)