MySQL에서 중복 행 삭제- DELETE JOIN 문을 사용하여 중복 행 삭제

MySQL에서 하나를 제외한 모든 중복 행을 삭제하시겠습니까? [복제하다]

사용자 테이블에는 [email protected] 이메일이 중복된 5개의 레코드가 있습니다.

검색은 사용자 테이블에서 중복 이메일을 반환합니다.

SELECT *, COUNT(email) FROM users  
GROUP BY email   
HAVING  COUNT(email) > 1;

DELETE JOIN 문을 사용하여 중복 행 삭제

DELETE table1 FROM users table1  
	INNER JOIN users table2   
	WHERE table1.id < table2.id AND table1.email = table2.email

결과