题目描述
Write a SQL query to find all duplicate emails in a table named Person
.
+----+---------+ | Id | Email | +----+---------+ | 1 | a@b.com | | 2 | c@d.com | | 3 | a@b.com | +----+---------+
For example, your query should return the following for the above table:
+---------+ | Email | +---------+ | a@b.com | +---------+
Note: All emails are in lowercase.
解题思路
题目中说要找出在表Person的Email列中找出"duplicate Email",及重复出现的所有Email。一开始写的sql如下:
select Email
from Person
group by Email
having count(Id) = 2;
from Person
group by Email
having count(Id) = 2;
误以为"duplicate Email"指的是只出现两次的相同email。。。结果白白贡献了一记wrong answer,看来英语水平还处于比较low的水平。后来看了出错的测试用例才恍然大悟。
ACCEPTED SQL
select Email
from Person
group by Email
having count(Id) >= 2;
from Person
group by Email
having count(Id) >= 2;