Database/SQLP

[SQLP] SQL 파싱과 최적화

chmono 2024. 2. 14. 23:59

 참고 교재 - 친절한 SQL 튜닝

 

 

1. 옵티마이저

- 시스템 및 오브젝트 통계정보를 바탕으로 다양한 실행경로를 생성해서 비교한 후 가장 효율적인 실행 계획을 선택하는 DBMS 내부 엔진

- SQL 최적화를 수행하며, 각 실행계획의 비용(I/O 횟수나 예상 소요시간)을 비교한다.

 

 

2.  옵티마이저 힌트 사용법

- 주석 기호(/* */) 에 '+' 를 붙이면 된다.

# Example
SELECT /*+ INDEX(A 고객_PK) */
	   고객명, 연락처, 주소, 가입일시
FROM 고객 A
WHERE 고객ID = '00000'

 

- 주의 사항

(1) 힌트 나열 시, 콤마(,) 사용 불가

(2) 테이블 명시할 떄, 스키마명 제외

(3) From절에서 테이블 별칭(Alias) 명시했을 경우, 별칭을 사용해줘야한다.

# Example
SELECT /*+ FULL(E) */
FROM EMP E