2012-03-28 2 views
0

나는 테이블 A에 테이블 B의 값을 복사하는 큰 기록을 현재 내가 사용하는이 :MySQL의 테이블 B에서 테이블을 업데이트 A 열

UPDATE table_a, table_b 
SET  
table_a.column_a = table_b.column_a, 
table_a.column_b = table_b.column_b, 
table_a.column_c = table_b.column_c, 
table_a.column_d = table_b.column_d, 
table_a.column_z = table_b.column_z 
WHERE 
table_a.column_uid = table_b.column_uid 

현재 업데이트 문이 난 때문에 실행하는 데 시간이 오래 걸리는를 노트북에. 느린 기계.

다른 값으로 업데이트 할 수 있습니까?

+0

전체 테이블을 복사 하시겠습니까? 또는 일부 컬럼? – safarov

+0

일부 열만 있습니다. –

+0

테이블의 크기 (행 수)는 어느 정도입니까? EXPLAIN에 상응하는 SELECT를 실행 해 보셨습니까? – liquorvicar

답변

3

먼저 테이블 A와 B가 모두 기본 ID 또는 색인 ID 필드에 있는지 확인하십시오.

+0

문 업데이트와 두 테이블 모두 'pk'가'column_id'이고'column_uid'가 유일하다. –