0
'source_key'필드의 인덱스를 사용하여 다음 SQL 쿼리를 실행하려고합니다. MySQL에서는 아주 오랫동안 '데이터 보내기'상태로 정지합니다.MySQL에서 매우 느린 내부 조인 쿼리 속도가 향상
UPDATE clients_test c
INNER JOIN
(
select dob, last_name, soundex(first_name) as soundexfirstname, max(source_key) as keep
from clients_test
group by dob, last_name, soundex(first_name)
having count(*) = 2
) k
ON c.dob=k.dob AND c.last_name=k.last_name AND soundex(c.first_name)=k.soundexfirstname
SET duplicate_key = NULLIF(k.keep, c.source_key),
duplicate = (k.keep = c.source_key);
데이터베이스 테이블 clients_test에서 중복 레코드를 식별하고 제거해야합니다. 이 작업을 더 빨리 수행하거나 쿼리를보다 효율적으로 변경하는 방법이 있습니까?
미리 계산 된 입력란으로 soundex를 이동하면이 쿼리가 확실히 진행됩니다. 저전력 클라우드 인스턴스에서 여전히 오랜 시간이 걸렸지 만 적어도 하루 이상은 걸리지 않았습니다! – Darren