Leetcode Note: Mysql - Delete Duplicate Emails
Delete Duplicate Emails - LeetCode
https://leetcode.com/problems/delete-duplicate-emails/
- MySQL で取り組んだメモ
所感
- order by で重複を抽出して delete する感じになりそう
回答
Simple Solution - LeetCode Discuss
https://leetcode.com/problems/delete-duplicate-emails/discuss/55553/Simple-Solution
DELETE p1
FROM Person p1, Person p2
WHERE p1.Email = p2.Email AND p1.Id > p2.Id
- DELETE: 削除
- FROM: 複数テーブルを指定できるので、今回は 2つ の Person テーブルを指定
- WHERE: Person テーブルの Email で結合
- AND: Email が重複しているレコードがあった場合、より Id が大きい方を選択
FROM で複数テーブル指定できるんだというのと、同じテーブルを複数指定する使い方があるという学びを得た