디비 중복 데이터를 하나만 남기고 삭제하고 싶습니다.

디비 중복 데이터를 하나만 남기고 삭제하고 싶습니다.

QA

디비 중복 데이터를 하나만 남기고 삭제하고 싶습니다.

본문

테이블 : id_score
필드1 : trade_code
필드2 : name

 

필드1(trade_code) 와 필드2(name) 매칭해서 하나의 데이터만 남기고 삭제하고 싶습니다.

아래 내용이 맞나요?

디비 접속도 안되고 너무 오래걸려 KILL 했음

/*

DELETE FROM id_score 
WHERE idx 
NOT IN (SELECT * FROM (SELECT MIN(idx) FROM id_score GROUP BY name,trade_code) AS tempTable);

*/

조언 좀 부탁합니다.

감사드림.

이 질문에 댓글 쓰기 :

답변 1

백업후에 시도해 보세요.

DELETE a FROM id_score a inner join id_score b on

a.name=b.name and a.trade=b.trade
WHERE a.idx > b.idx 

답변을 작성하시기 전에 로그인 해주세요.
전체 58
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT