입니다 수 있습니다. 권리?
제목이 같고 설명이 다른 행을 찾고 다른 행과 동일한 설명이있는 행을 하나만 찾고 다른 행은 삭제하고 싶습니다.
테이블 이름이 table1이고 ID 열이 숫자라고 가정합니다.
DELETE t
FROM table1 t
JOIN (
SELECT title, description, MIN(ID) AS idNotToDelete
FROM table1
GROUP BY title, description
HAVING COUNT(*) > 1
) t1
ON t.title = t1.title AND t.description = t1.description AND t1.idNotToDelete <> t.id
위의 쿼리는 두 개 이상의 발생이있는 모든 행을 찾고 발생 당 최소 ID를 표시합니다. 그런 다음 최소 ID가 아닌 동일한 제목 및 설명이있는 모든 중복 행을 삭제합니다. 그래서
ID 타이틀 정보
1 myTitle이라는 인 mydescription
2 myTitle이라는 인 mydescription
3 myTitle2 myDescription2
4 myTitle2 myDescription2
5 myTitle이라는 인 mydescription
해질 것이다
ID 타이틀 정보
1 myTitle myDescription
3 myTitle2 myDescription2