[ mysql ] 중복데이터 추출 할 때 group by having 각각의 데이터별로 중복값 유무 검색 > database

본문 바로가기

사이트 내 전체검색

database

[ mysql ] 중복데이터 추출 할 때 group by having 각각의 데이터별로 중복값 유무 검색

작성일 20-06-10 11:40

페이지 정보

작성자 웹지기 조회 21,437회 댓글 0건

본문

중복데이터가 몇개이상인 것을 검색하고 싶을 때

중복데이터를 추출 할 때 group by having절을 사용해서 검색을 합니다.

중복데이터가 몇개이상인 것을 검색하고 싶을 때

select *, count(검색필드명 또는 *) as ok from 테이블명 where 필드명=값 group by 검색필드명 having count(검색필드명 또는 *) > n
이런식으로 쿼리를 실행시키면 한 필드마다의 중복된 값들이 표기되며 몇개씩 중복되어 있는지 알 수 가 있다.


 

select *, count(검색필드명 또는 *) from 테이블명 where 필드명=값 group by 검색필드명having count(검색필드명 또는 *) > n

select *, count(검색필드명 또는 *) as ok from 테이블명 where 필드명=값 group by 검색필드명 having count(검색필드명 또는 *) > n


중복데이터 추출
SELECT * FROM 테이블 WHERE 검색할 필드 IN ( SELECT 검색할 필드 FROM 테이블 GROUP BY 검색할 필드 HAVING COUNT(*) > n)


중복데이터
select A.* from 테이블 A, (select 검색할필드명 from 테이블 group by 검색할 필드 having count(*) > n) B where A.필드 = B.필드


중복데이터 찾기
select 필드, count(필드) from 테이블 group by 필드


중복데이터 삭제
DELETE FROM 테이블 WHERE 검색할필드명 IN ( SELECT A.필드명 FROM ( SELECT 필드명 FROM 테이블 GROUP BY 검색필드명HAVING COUNT(*)>n)A)

추천0

비추천 0

댓글목록

등록된 댓글이 없습니다.

전체 34건 1 페이지

이미지 목록

게시물 검색
Copyright © 즐거운 코딩 생활 ( funyphp ). All rights reserved.
PC 버전으로 보기