【题目描述】
编写一个 SQL 查询,查找
Person
表中所有重复的电子邮箱。
示例:
+----+---------+ | Id | Email | +----+---------+ | 1 | a@b.com | | 2 | c@d.com | | 3 | a@b.com | +----+---------+
根据以上输入,你的查询应返回以下结果:
+---------+ | Email | +---------+ | a@b.com | +---------+
说明:
所有电子邮箱都是小写字母。
【题目解答】
首先建表、生成数据
drop table if exists person;
create table `person` (
`id` int(11) not null auto_increment,
`email` char(20) not null,
primary key(`id`)
)engine=innodb charset=utf8;
insert into person(email) value("a@b.com"),("c@d.com"),("a@b.com");
解答如下:
mysql> select email from (select email, count(email ) as email_num from person g
roup by email) as p where p.email_num > 1;
+---------+
| email |
+---------+
| a@b.com |
+---------+
1 row in set (0.00 sec)
版权声明:本文为fIuent原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。