问题
编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱
示例:
+——+————-+ | Id | Email | +——+————-+ | 1 | a@b.com | | 2 | c@d.com | | 3 | a@b.com | +——+————-+
根据以上输入,你的查询应返回以下结果:
+————-+ | Email | +————-+ | a@b.com | +————-+
思路
select email
from Person
group by email
having count(email) > 1;
select Email, count(Email) as num
from Person
group by Email;
num a@b.com 2 c@d.com 1
以此作为临时表,我们可以得到下面的解决方案
select Email from
(
select Email, count(Email) as num
from Person
group by Email
) as statistic
where num > 1;