当前位置: 首页 > news >正文

查找重复的邮箱

一、题目

表: Person

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| id          | int     |
| email       | varchar |
+-------------+---------+
id 是该表的主键(具有唯一值的列)。
此表的每一行都包含一封电子邮件。电子邮件不包含大写字母。

编写解决方案来报告所有重复的电子邮件。 请注意,可以保证电子邮件字段不为 NULL。

以 任意顺序 返回结果表。

结果格式如下例。

示例 1:

输入: 
Person 表:
+----+---------+
| id | email   |
+----+---------+
| 1  | a@b.com |
| 2  | c@d.com |
| 3  | a@b.com |
+----+---------+
输出: 
+---------+
| Email   |
+---------+
| a@b.com |
+---------+
解释: a@b.com 出现了两次。

二、源代码

select Email from
(select Email, count(Email) as numfrom Persongroup by Email
) as statistic
where num > 1
;

三、解题思路

1.子查询部分:

select Email, count(Email) as num

from Person

group by Email

(1)这部分是一个子查询,它的功能是统计每个邮箱地址在表中出现的次数

(2)group by Email 表示按照邮箱地址进行分组,将相同的邮箱地址归为一组

(3)count(Email) as num 表示计算每个分组中邮箱地址的出现次数,并将这个计数结果命名为 num

(4)子查询的结果会形成一个临时表,包含两列:Email(邮箱地址)和 num(出现次数),并通过 as statistic 给这个临时表起了个别名

2.主查询部分:

select Email from [子查询] where num > 1

(1)主查询从子查询生成的临时表中筛选数据

(2)where num > 1 表示只选择那些出现次数(num)大于 1 的记录

(3)最终返回这些符合条件的邮箱地址(Email)

四、总结

  1. 先按邮箱地址分组,统计每个邮箱出现的次数

  2. 再从统计结果中找出出现次数超过一次的邮箱地址

http://www.dtcms.com/a/433262.html

相关文章:

  • 塘厦建设网站腾虎广州网站建设
  • 做模具做什么网站做设计学什么英语比较好的网站
  • python做网站商城开发wordpress 网页混乱
  • 网站建设和管理是教什么科目网站建设168
  • 免费搭建永久网站步骤单位网站建设的请示
  • 教研网站建设方案网站设计主色学校
  • 上海网站建设口碑好白熊阅读做网站架构
  • 建设电影网站选服务器怎么选品牌建设情况介绍
  • 网站程序 制作网站建设企业网站价格
  • 建立企业门户网站建设网站前端开发语言
  • 检测网站速度小程序网站建设
  • 杭州自助建站市场监督管理局电话举报电话
  • SSM整合 —— 在Spring中配置MyBatis
  • 成都专业的整站优化贵阳网站建设-中国互联
  • 设计个网站多少钱西安免费网络
  • 计算机网站建设维护的目的wordpress如何更改主页home
  • 外贸网站免费模板怎样给网站加外链
  • 海西州商城网站建设网络服务器是指为网络提供资源
  • 蓝色网站素材用以前用过的域名做网站
  • 建站流程主要有哪些建网站一定要买服务器和域名吗
  • 有做a50期货的网站网站模板之家
  • 旅游网络网站建设方案湘潭正规seo优化
  • 用ps做企业网站分辨率是多少七牛 百度云加速 wordpress
  • 天津企业免费建站建设网站可选择的方案
  • php网站开发背景手机网站模板开发工具
  • 安徽网站开发哪家好简历模板免费下载的网页
  • 深圳模板网站建设公网上服务平台官网入口
  • 建站出海重庆专业网站建设
  • 自己做的网站安全吗网络营销的成功案例
  • 快站是个什么平台最好用的wordpress主题