Database/MySQL
[MySQL] 데이터 삭제
데이터현
2022. 3. 31. 22:33
https://leetcode.com/problems/delete-duplicate-emails/
Delete Duplicate Emails - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
위 문제를 풀고 DELETE 구문에 대해 정리하고자 함.
DELETE FROM 테이블 이름 WHERE 조건
DELETE p1 FROM PERSON p1, PERSON p2
WHERE p1.email = p2.email and p1.id > p2.id
;
위와 같이 뷰가 두 개 이상 있는 경우 어떤 테이블을 삭제할지 결정해줘야 함.
다른 풀이
DELETE FROM Person
WHERE id NOT IN (SELECT MIN(id) FROM Person
GROUP BY email);
뭔가 아직 (NOT IN , IN) + 서브쿼리가 바로 떠오르지가 않는다.