[Leetcode] Delete Duplicate Emails Remove duplicate mailboxes

Source: Internet
Author: User

Write a SQL query to delete all duplicate e-mail entries in a table named Person , keeping 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 has the following rows:

+----+------------------+| Id | Email            |+----+------------------+| 1  | [Email protected] | | 2  | [email protected]  | +----+------------------+

This problem let us delete duplicate mailbox, that we can first find all the non-duplicate mailbox, and then take a counter is duplicate mailbox, all deleted can, then we find out all the non-duplicate mailbox, we can follow the mailbox group up, and then use the MIN keyword to pick out the smaller, and then take the supplement set Delete:

Solution One:

DELETE  from WHERE  not inch (Select from,selectMINfromGROUP by (Email) p);

We can also use the intra-delivery to let two of the tables are linked to the mailbox, and then the same mailbox and the ID of the large delete, see the code as follows:

Solution Two:

DELETE  from JOIN  on=WHERE> p1. Id;

We can also use the where to associate two tables without a join:

Solution Three:

DELETE  from Person p1, person p2 WHERE =  and > p1. Id;

Similar topics:

Duplicate Emails

Resources:

Https://leetcode.com/discuss/61176/simple-solution-using-a-self-join

Https://leetcode.com/discuss/48403/my-answer-delete-duplicate-emails-with-double-nested-query

Leetcode all in one topic summary (continuous update ...)

[Leetcode] Delete Duplicate Emails Remove duplicate mailboxes

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.