반응형

 

*Sort Merge Join의 특징 - 2단계로 진행

 (1)소트 단계: 양쪽 집합을 조인 칼럼 기준으로 정렬

 (2)머지 단계: 정렬된 양쪽 집합을 서로 Merge

 

1. 조인 하기 전에 양쪽 집합을 정렬한다.

  ---> 양쪽 집합을 조인 칼럼 기준으로 정렬한 후에 조인을 시작

 

2. 부분적으로, 부분범위처리가 가능하다.

  ---> Outer 집합이 조인 칼럼 순으로 미리 정렬된 상태에서 사용자가 일부 로우만 Fetch 하다가 멈춘다면 Outer 집합은 끝까지 읽지 않아도 된다.

 

3. 테이블별 검색 조건에 의해 전체 일량이 좌우된다.

  ---> 두 집합을 각각 정렬한 후에 조인함으로써 각 집합의 크기, 즉 테이블별 검색 조건에 의해 전체 일량이 좌우된다.

 

4. 스캔 위주의 조인 방식이다.

  ---> 각 테이블 검색 조건에 해당하는 대상 집합을 찾을 때 인덱스를 이용한 Random 액세스 방식을 처리될 수도 있다. 이때 발생하는 Random 액세스량이 많다면 Sort Merge Join의 이점이 사라질 수 있다.

 

<예제>

SELECT /*+ ordered use_merge(e) */ D.DEPTNO, D.DNAME, E.EMPNO, E.ENAME

FROM DEPT D, EMP E

WHERE D.DEPTNO = E.DEPTNO

;

반응형