leetcode数据库sql之Delete Duplicate Emails

leetcode原文引用:

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 | [email protected] | | 2 | [email protected] | | 3 | [email protected] | +----+------------------+ 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 | [email protected] | | 2 | [email protected] | +----+------------------+
我的sql语句:

DELETE FROM Person 
WHERE
    id NOT IN (SELECT 
        id
    FROM
        (SELECT 
            MIN(id) AS id
        FROM
            Person
        GROUP BY email) AS a);


你可能感兴趣的:(leetcode数据库sql之Delete Duplicate Emails)