안녕하십니까, stackoverflownians,두 개의 열에서 중복을 제거하십시오.
두 개의 열에 중복 된 테이블이 있습니다. 단지 COL1에 대한
## table_1
col1 col2
1 10
1 10
1 10
1 11
1 11
1 12
2 20
2 20
2 21
2 21
# should return this tbl without duplication
col1 col2
1 10
1 11
1 12
2 20
2 21
내 앞의 코드 계정 및 I가이를 조회하는 방법을 알고하지 않습니다 행 A의 번호가 행 B의 COL1과 COL2에 복제하는 경우, 난 단지 유지을 행한다는 것을 의미 두 coluns는 :
CREATE TABLE temp LIKE db.table_1;
INSERT INTO temp SELECT * FROM table_1 WHERE 1 GROUP BY col1;
DROP TABLE table_1;
ALTER TABLE temp RENAME table_1;
그래서 나는 그것에 대해 생각 :
CREATE TABLE temp LIKE db.table_1;
INSERT INTO temp(col1,col2)
SELECT DISTINCT col1,col2 FROM table_1;
then drop and rename..
그러나 나는 그것이 먹힐 확실하지 않다 그것은 너무 오래 나는 중지해야합니다 걸리는 경우 MySQL은, 불안정한 경향이있다 쿼리 및 그 내 CR .. .. 다시
코드의 어떤 제안을 T.T
우리는 200,000,000 행이 그들 모두가 하나 개 이상의 중복이를 서버 화산재? :) 또한 .. 얼마나 걸릴까요? 분 또는 시간?
이 질문의 첫 번째 대답을 확인하십시오. 해결책을 찾는 데 도움이 될 수 있습니다. http://stackoverflow.com/questions/7105618/how-to-get-only-repeated-records-in-a-table –
'INSERT INTO ... SELECT DISTINCT'가 올바른 방법입니다. 안정성 문제가있는 경우 쿼리가 완료 될 때까지 사이트/시스템을 오프라인 상태로 만드십시오. 미리 가동 중단 시간을 계획하십시오. – cdhowie