본문 바로가기
MySQL

[MySQL] 중복 데이터 찾기

by Rapil 2023. 7. 25.

안녕하세요! 오늘은 MySql에서 중복된 데이터가 어디있는지 찾기 어려울때 찾는 방법을 설명하겠습니다!

 


Point

 

MySQL 중복 데이터 찾기

MySQL 중복 데이터만 삭제


 

MySQL 중복 데이터 찾기

 

데이터 예시

 

중복 데이터 확인

 

 

$ SELECT [중복되는 컬럼명] FROM [중복 조사 할 테이블 명] 
$ GROUP BY [중복 조사 할 컬럼 명]
$ HAVING COUNT(중복 조사 컬럼 명) > 1; // 1개 이상의 갯수를 가진 컬럼을 조사한다


$ SELECT name FROM prac
$ GROUP BY name
$ HAVING COUNT(name) > 1;

name 컬럼에서 중복 된 데이터가 1개 이상인 데이터를 검색했습니다.

 


MySQL 중복 데이터만 삭제

 

$ DELEETE a FROM [테이블 명] a, 
$ [테이블 명] b WHERE a.[순서값을 가진 컬럼 명] > b.[순서값을 가진 컬럼 명] 
$ AND a.[중복값을 비교 할 컬럼 명] = b.[중복값을 비교 할 컬럼 명];

// 예
$ DELETE a FROM prac a,
$ prac b WHERE a.id > b.id 
$ AND a.email =b.email;

중복 데이터 삭제 & 삭제 후 테이블

여기서 중요한 점은 순서값을 가진 컬럼명은 보통 AUTO_INCREMENT(자동 증가)가 되는 숫자 데이터가 담긴 컬럼입니다.

실행 후 중복되어 저장되있던 id번호 6번이 삭제된 걸 확인 가능합니다.

 


 

이렇게 MySQL 중복 데이터를 찾고 삭제하는걸 해보았습니다.

모두 개발 힘내세요!

 


참고 URL

 

https://lynmp.com/ko/article/de811c9dc5fj

 

[MySQL] 중복값 갯수와 각각의 값 구하기 - LYNMP

MySQL 에서 테이블에 중복된 값들의 갯수와 각각의 값을 찾아보는 쿼리입니다.

lynmp.com

https://dzzienki.tistory.com/39

 

MYSQL 중복되는 항목 찾기

MYSQL 에서 중복되는 항목이 있는지 찾고싶을 때 1 2 3 4 5 SELECT COLUMN_NAME , -- 중복되는 데이터 COUNT(COLUMN_NAME) -- 중복 갯수 FROM TABLE_NAME -- 중복조사를 할 테이블 이름 GROUP BY COLUMN_NAME -- 중복되는 항목

dzzienki.tistory.com

https://codingspooning.tistory.com/entry/MySQL-SQL-%EC%A4%91%EB%B3%B5-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EC%B2%98%EB%A6%AC

 

[MySQL] 중복 데이터 찾기 및 제거

MySQL로 중복 데이터 처리하기 데이터 예시 - SQL Fiddle에서 데이터 확인 id first_name last_name email 1 Carine Schmitt carine.schmitt@verizon.net 2 Jean King jean.king@me.com 3 Peter Ferguson peter.ferguson@google.com 4 Janine Labrune j

codingspooning.tistory.com