Delete Duplicate Emails

来源:互联网 发布:2017淘宝新手卖什么好 编辑:程序博客网 时间:2024/05/01 23:45

Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique emails based on its smallest Id.

+—-+——————+
| Id | Email |
+—-+——————+
| 1 | john@example.com |
| 2 | bob@example.com |
| 3 | john@example.com |
+—-+——————+
Id is the primary key column for this table.
For example, after running your query, the above Person table should have the following rows:

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

DELETE FROM Person WHERE ID NOT IN (SELECT * FROM (SELECT MIN(Id) FROM Person p GROUP BY Email) t);
0 0