LeetCode刷题-数据库(MySQL)- 196.删除重复的电子邮箱

196. 删除重复的电子邮箱

一、题目描述

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

Id Email
1 [email protected]
2 [email protected]
3 [email protected]

Id是这个表的主键

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

Id Email
1 [email protected]
2 [email protected]

二、思路分析

两表自连,然后使用WHERE语句筛选出符合题意的结果。

三、代码实现

DELETE
	P1
FROM
	Person P1,
	Person P2
WHERE
	P1.Email = P2.Email
	AND P1.Id > P2.Id

你可能感兴趣的:(MySQL)