3.3.3. 조인 순서 조정을 위한 힌트

이 힌트는 다수의 테이블을 조인하는 경우에 조인 순서에 혼선이 있을 때 적용하는 것이 가장 일반적이다.
Sort Merge 조인 이나 해쉬조인에서는 적은 테이블을 먼저 처리하도록 유도할 때 사용하는 것이 좋다.

ORDERED

FROM절에 기술된 테이블 순서대로 조인을 수행하도록 유도한다.
만약 LEADING 힌트와 함께 사용하면 LEADING 힌트는 무시된다.


 예) SELECT /*+ ORDERED */ ...
       FROM TAB1, TAB2, TAB3
       WHERE ....

ORDERED 힌트는 액세스 순서만 제시할 뿐이고, 조인 방법 과는 무관하기 때문에 조인방법을 유도하기 위한 USE_NL, USE_MERGE등의 힌트와 함께 사용하는 것이 일반적이다


 예) SELECT /*+ ORDERED USE_NL(A B C) */.........
      FROM TAB1 a, TAB2 b, TAB3 c
      WHERE ........

LEADING

FROM절에 기술한 테이블의 순서와 상관없이 조인 순서를 제어하는 힌트로서 ORDERED 힌트와는 달리 FROM절을 변경 필요 없이 사용할 수 있다.
ORDERED 힌트와 함께 사용되면 무시된다.


 예) SELECT /*+ LEADING(b c) */......
       FROM CUST a, ORDER_DETAIL b, ITEM c
       WHERE a.cust_no = b.cust_no
	   AND b.item_no = c.item_no
	   AND ....

문서에 대하여

  • 최초작성자 : 임주영
  • 최초작성일 : 2008년 3월 20일
  • 이 문서는 오라클클럽 대용량 데이터베이스 스터디 모임에서 작성하였습니다.
  • 이 문서의 내용은 이화식님의 새로쓴 대용량 데이터베이스 솔루션을 참고했습니다.
  • 이 문서를 다른 블로그나 홈페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^\^