쿼리를 실행하는 데 약 20 초가 걸리고 단일 트랜잭션에서 여러 번 실행되기 때문에 성능에 좋지 않은 영향을줍니다.SqL 쿼리 성능 문제
[update table1
set column3 = 'new_str'
where column1||','||column2 in
(select table1.column1||','||column2
from table1
join table2 on table1.column1 = table2.column1
where table2.column4 = 'value4'
and table1.column2 = 'value2'
and column3 = 'old_str')]
표 1
컬럼 1 - 문자 (12) - 기본 키
2 열 - 문자 (30) - 기본 키
3 열 - 문자 (25)
표 2
컬럼 1 - 문자 (12) - 기본 키 (표 1의 외래 키)
4 - char (12)
위 표에는 약 1009578 및 1082555 개의 레코드가 있습니다.
SQL의 맛? – dnagirl
이 많은 레코드를 사용하면 쿼리 최적화 이외의 다른 방법으로 시간을 절약 할 수 있습니다. 업데이트, 제거 또는 최적화 할 수있는 인덱스를 확인하고 수집 할 레코드의 일부를 제거하는 몇 가지 기본 기준으로 뷰를 활용합니다. 어쩌면 지난 달의 기록이거나 X 상태의 기록 일 수도 있습니다. 어떤 DB를 사용하고 있습니까? –