1. 중첩 루프 조인 (Nested Loop Join):
  2. 정렬 병합 조인 (Merge Join):

Untitled

  1. 해시 조인 (Hash Join):

    HASH JOIN의 사용처

    1. JOIN 컬럼에 적당한 인덱스가 없어 NL JOIN이 비효율적일 때

    2. JOIN Access량이 많아 Random Access 부하가 심하여 NL JOIN이 비효율적일 때

    3. Sort Merge Join을 하기에는 두 테이블이 너무 커 Sort 부하가 심할 때

    4. 수행빈도가 낮고 쿼리 수행 시간이 오래 걸리는 대용량 테이블을 JOIN 할 때

    Untitled

    1. 둘 중 작은 집합(Build Input)을 읽어 Hash Area에 해시 테이블을 생성한다. (해시 함수에서 리턴 받은 버킷 주소로 찾아가 해시 체인에 엔트리를 연결)

    2. 반대쪽 큰 집합(Probe Input)을 읽어 해시 테이블을 탐색하면서 JOIN 한다.

    3. 해시 함수에서 리턴 받은 버킷 주소로 찾아가 해시 체인을 스캔하면서 데이터를 찾는다.

    책 내용