手记

(LeetCode196:数据库)删除重复的电子邮箱

编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。

+----+------------------+| Id | Email            |
+----+------------------+
| 1  | john@example.com || 2  | bob@example.com  |
| 3  | john@example.com |+----+------------------+
Id 是这个表的主键。

例如,在运行你的查询语句之后,上面的 Person 表应返回以下几行:

+----+------------------+| Id | Email            |
+----+------------------+
| 1  | john@example.com || 2  | bob@example.com  |
+----+------------------+

Solution:

DELETE a
FROM
    person a,
    person b
WHERE
    a.email = b.emailAND a.id > b.id;



作者:lconcise
链接:https://www.jianshu.com/p/a5aa8f7abe68


0人推荐
随时随地看视频
慕课网APP