[김정삼의 SQL튜닝] 대량목록조회성능이슈 2편
[김정삼의 SQL튜닝] 대량목록조회성능이슈 1편 보기 I. 개요 여기서 선택적인 조건이란, 어떤 입력 변수 값이 선택적이어서 SQL문 조건절에 "A.COL_ID = NVL(:col_id, A.COL_ID)"와 같이 구문을 작성하는 경우를 의미하며, 이런 SQL 실행 시 성능문제가 흔히 발생합니다.그리고, 이런 선택적인 조회 조건 처리 SQL문에서 성능 문제가 자주 발생하는 주된 이유는 크게 실행계획 분리 문제와 전체 범위 처리 문제로 압축할 수 있습니다. 실행계획 분리 문제선택적인 조건절이 하나만 있는 경우 옵티마이저는 최적화 과정을 통해 실행계획을 분리할 수 있습니다. 하지만, 둘 이상의 선택적인 조건절이 있는 경우, 옵티마이저가 모든 경우의 수 만큼 실행계획을 분리하지 않기 때문에, 결국, 여러 입력..