每天一道SQL题
每天一道SQL题之day07
1、题目:
链接: 查找重复的电子邮箱
表:Person
Column Name | Type |
---|---|
id | int |
varchar |
id 是该表的主键(具有唯一值的列)。
此表的每一行都包含一封电子邮件。电子邮件不包含大写字母。
编写解决方案来报告所有重复的电子邮件。 请注意,可以保证电子邮件字段不为 NULL。
以 任意顺序 返回结果表。
结果格式如下例。
示例 1:
输入:
Person
表:
id | |
---|---|
1 | a@b.com |
2 | c@d.com |
3 | a@b.com |
输出:
a@b.com |
2、题解
select email as Email
from Person
group by email
having count(id) > 1
select distinct p1.email
from Person p1,Person p2
where
p1.email = p2.email and p1.id != p2.id
3、解析
可以使用group by
进行分组,在找出分组后数量大于1的。
也可以通过筛选条件。