Leetcode每日一题:182.duplicate-emails(查找重复的电子邮箱)

在这里插入图片描述
思路:一开始想着,原Person Email减去distinct Email的person剩下的即为重复的电子邮箱,但这样不好实现,于是开始想别的法子;
一、让Person进行Group by Email,如果对应每个Email,它的count(Idl)>1,那么这就是个重复的Email;
二、让Person自己连接自己,如果出现了a.Id!=b.Id,那么说明出现重复Email;

在这里插入图片描述

代码:

方法一:
SELECT
	Email 
FROM
	Person 
GROUP BY
	Email 
HAVING
	COUNT( Id ) > 1;  ##这里count(Id)和count(Email)都是可以的
方法二:
select distinct a.Email 
from Person a, Person b 
where a.Email = b.Email and a.Id != b.Id

猜你喜欢

转载自blog.csdn.net/wyll19980812/article/details/108179346