디비 중복 데이터를 하나만 남기고 삭제하고 싶습니다.
본문
테이블 : 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
답변을 작성하시기 전에 로그인 해주세요.