[LeetCode] #182 查找重复的电子邮箱

编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。

根据以上输入,你的查询应返回以下结果:

使用GROUP BY和HAVING

SELECT Email FROM Person GROUP BY Email HAVING COUNT(Email)>1;

嵌套子查询

SELECT Email FROM(SELECT Email, count(Email) AS num FROM Person GROUP BY Email) AS statistic WHERE num > 1;

知识点:

WHERE与HAVING作用的对象不同。WHERE 子句作用于表和视图,HAVING 子句作用于组

WHERE 在分组计算之前选取输入行(因此,它控制哪些行进入分组), 而 HAVING 在分组之后选取分组的行。因此,WHERE 子句不能包含分组函数。相反,HAVING 子句总是包含分组函数

总结:

 

posted @ 2021-08-31 15:18  1243741754  阅读(29)  评论(0编辑  收藏  举报