저는 실행 속도가 느린 업데이트 문을 가지고 있으며 where 절을 join 절로 이동하면 성능이 향상 될지 궁금합니다. 매우 큰 테이블 이제where 절을 join 절로 이동하면 성능이 향상됩니까?
update T1 inner join (select ID, GROUP_CONCAT(x) as X from T3 group by ID) as T2
on T1.ID=T2.ID set T1.X=T2.X where T1.TYPE='something';
(기록의 수백만), 이렇게 빨리 될 것이다 : 여기에 쿼리입니까?
update T1 inner join (select ID, GROUP_CONCAT(x) as X from T3 group by ID) as T2
on T1.ID=T2.ID and T1.TYPE='something' set T1.X=T2.X;
T1의 행에서 TYPE = '무언가'가 몇 퍼센트입니까? T2에있는 대응하는 행의 분율은 동일합니까? T1의 각 행에 대해 T2에 일반적으로 몇 개의 행이 있습니까? – Bohemian