오라클 힌트
1. 최적화목표
ALL_ROWS 전체 처리속도 최적화
FIRST_ROWS(N) 최초N건 응답속도 최적화
2. 엑세스 방식
FULL
INDEX
INDEX_DESC
INDEX_FFS
INDEX_FS
INDEX_SS
3. 조인순서
ORDERED FROM절에 나열된 순서대로 조인
LEADING LEADING 힌트 괄호에 기술한 순서대로 조인
SWAP_JOIN_INPUTS 해시조인시 BUILD INPUT을 명시적 선택
4. 조인방식
USE_NL
USE_MERGE
USE_HASH
NL_SJ
MERGE_SL
HASH_SJ
5. 서브쿼리 팩토링
MATERIALIZE WITH문으로 정의한 집합을 물리적으로 생성하도록 유도
WITH /*+MATERIALIZE */ T AS (SELECT X)
INLINE WITH문으로 정의한 집합을 물리적으로 생성하지 않고 INLINE 처리하도록 유도
WITH /*+INLINE */ T AS (SELECT X)
6. 쿼리변환
MERGE 뷰머징유도
NO_MERGE 뷰머징 방지
UNNEST 서브쿼리 Unnesting 유도
NO_UNNEST 서브쿼리 Unnesting 방지
PUSH_PRED 조인조건 pushdown 유도
NO_PUSH_PRED 조인조건 pushdown 방지
USE_CONCAT OR 또는 INLIST 조건을 OR-EXPAND 유도
NO_EXPAND OR 또는 INLIST 조건을 OR-EXPAND 방지
7. 병렬처리
PARALLEL Table scan 또는 DML 병렬방식으로 처리유도
PARALLEL_INDEX 인덱스 스캔을 병렬방식으로 처리유도
PQ_DISTRIBUTE 병렬 수행시 데이터분배방식 결정
8. 기타
APPEND Direct-path Insert유도
DRIVING_SITE DB-LINK Remote 쿼리에 대한 최적화 및 실행 주체 지정
PUSH_SUBQ 서브쿼리를 가급적 빨리 필터링하도록 유도
NO_PUSH_SUBQ 서브쿼리를 가급적 늦게 필터링하도록 유도
DBMS_MVEIW.REFRESH