본문 바로가기
웹개발/데이터베이스

오라클 힌트(hint)

by 지구별 여행자 임탱 2024. 2. 28.
728x90

오라클 힌트(hint)

오라클 힌트는 SQL쿼리문의 실행 계획에 영향을 주어 원하는 방식으로 쿼리를 수행하도록 지시하는 키워드입니다.

주로 옵티마이저가 자동으로 결정하는 쿼리의 실행 경로를 개발자가 원하는 방향으로 유도할 때 사용되며,

인덱스 강제 사용, 조인 방법 지정, 쿼리 실행 방식 변경 등에 사용 됩니다.

 

힌트의 기본 개념들
힌트의 사용 목적: 쿼리의 효율을 개선하기 위해 옵티마이저의 자동 결정을 개발자가 재지시.
힌트의 기본 형식: SELECT 문 안에 /*+ 힌트명 [매개변수] */ 형태로 주석 안에 포함시켜 사용.
주의해야 할 점: 힌트의 오용은 오히려 성능 저하를 초래할 수 있기 때문에 세심한 분석과 테스트가 필요.

 

오라클 힌트들과 예제
SELECTIVITY: 특정 조건의 선택도를 수동으로 제어합니다.

SELECT /*+ SELECTIVITY(filter 0.0001) */ ...

INDEX: 지정한 인덱스를 쿼리에 사용하도록 합니다.

SELECT /*+ INDEX(emp EMP_INDEX) */ ...


USE_NL: Nested Loop 조인 방식을 사용하도록 합니다.

SELECT /*+ USE_NL(a b) */ ...


FIRST_ROWS: 빠른 응답 시간을 목적으로 앞부분의 행을 빠르게 반환하도록 합니다.

SELECT /*+ FIRST_ROWS(n) */ ...