테이블 이름이 A 인 것을 고려하십시오.이 테이블에는 mark라는 이름의 열이 하나만 있습니다. 중복 된 값이 있습니다. 임시 테이블없이 중복 값을 삭제하려면 어떻게해야합니까? 테이블에 중복 된 값 중 하나가 있어야합니다.테이블의 중복 레코드 삭제
답변
두 개의 레코드가 테이블에있는 경우 고유 한 항목을 식별하여 해당 항목 만 삭제할 수 있는지 확신 할 수 없습니다. 당신이 할 수있는 것은 :
- 가 모두 삭제 한 다음 아마 커서를 사용하거나 구조를 반복 한 다시 추가 할 수 있습니다.
- 다른 테이블과 그룹을 선택하여 중복되지 않도록 한 다음 원본에서 모든 행을 삭제하고 복사하십시오.
호출이 테이블에 ID 열을 추가 한 다음 채울 :() 이름으로 그룹) MAX (ID를 선택합니다 (NOT IN ID 을 를)
을 에서 삭제
하고 나중에 INNER FROM
안녕 그냥 테이블에 하나의 열이 있다는 질문을 참조하십시오 – susanthosh
나는 그것을 이해합니다. 내 제안은 열이 아닌 테이블 내의 레코드 (행)와 관련이 있습니다. – bobwah
SELECT * 가 B 같이 가입이 열을 제거 할 수 있습니다 WHERE A.marks = B.marks;
중복 된 값을 표시합니다 (실수하지 않은 경우). 그러면 삭제를 위해 JOIN을 수행 할 수 있습니까?
편집 : 시도해 보았습니다. 작동하지 않습니다. 테이블에 ID 열이 없습니까? 좋아 : 당신이 당신의 테이블에있는 키 그래서 당신의 행의 고유하게 정의하지 않았기 때문에 중복 susantosh 삭제 그렇게 어려운 이유
SELECT *
FROM A INNER JOIN A as B ON A.marks = B.marks
WHERE A.id != B.id;
이유는? 테이블 디자인에 관한 기본 서적을 골라야하고 독창성이 없으면 아무 것도 알아낼 수 없다는 것을 정신 나갈 수 있다는 것을 깨달을 필요가 있습니다.
몇 가지 당신이 할 수 있습니다 : 특정 마크 BY
SELECT DISTINCT marks FROM TableName INTO NewTableName
- 그룹은 다른 테이블로 이동 한 후 고유 ID 열을 추가 이전 테이블을
- 을 삭제 (어쩌면의 int 유형) 중복 코드를 없애기 위해 코드를 작성하십시오.
이들은 옵션 중 일부일 뿐이지 만 테이블 디자인의 기초를 이해하지 못하면 t 반복해서 그의 문제.
중요한 점은 임시 테이블을 사용해서는 안된다는 것입니다. – susanthosh
WITH q AS
(
SELECT *, ROW_NUMBER() OVER (PARTITION BY marks ORDER BY marks) AS rn
FROM a
)
DELETE
FROM q
WHERE rn > 1
- 1. 중복 레코드 삭제
- 2. SQL : SQL Server에서 중복 레코드 삭제
- 3. Google App Engine 테이블의 레코드 삭제
- 4. 중복 레코드
- 5. 모든 이전 레코드 삭제
- 6. 모든 레코드 삭제
- 7. 중복 삭제
- 8. 삭제 중복
- 9. Mysql 중복 키/삭제
- 10. sqlserver2005에서 단일 쿼리로 한 번에 여러 테이블의 레코드 삭제
- 11. Linq2SQL 및 중복 레코드
- 12. 중복 된 레코드 선택
- 13. C++의 레코드 중복
- 14. 테이블에서 중복 레코드 제거
- 15. 내부 중복 레코드가없는 레코드
- 16. NHibernate Linq - 중복 레코드
- 17. 삭제 된 레코드 버퍼 읽기
- 18. 테이블의 중복 도메인 제약
- 19. 테이블의 레코드 조합 확인
- 20. 테이블의 레코드 수 얻기
- 21. mysql 테이블의 무작위 레코드
- 22. 조인 테이블의 마지막 레코드
- 23. 테이블의 레코드 확인
- 24. MySQL/ASP - 중복 행 삭제
- 25. 컬렉션에서 중복 바이트 [] 삭제
- 26. 중복 파일 삭제 (근접)
- 27. 중복 기록을 삭제 하시겠습니까?
- 28. 배열에서 중복 삭제
- 29. 데이터베이스 레코드 삭제
- 30. MySQL 다중 레코드 삭제
유래에 중복 quetions 삭제 : http://www.google.com/search?q=duplicate+records+site:stackoverflow.com –
http://stackoverflow.com/questions/1585412/sql- 테이블에서 중복 레코드 삭제 –
Susan, Vinko가 제공 한 링크를 클릭하면 이전 비슷한 SO 질문에서 대답을 찾을 수 있습니다. – DOK