중첩 반복 조인 (Nested Loop Join)

I. 중첩 반복 조인(Nested Loop Join)

가. 중첩 반복 조인(Nested Loop Join)의 개념

다수 테이블에서 하나의 집합 기준 순차적 상대방 Row 결합하여 필요 결과 추출하는 조인 기법

나. 중첩 반복 조인의 특징

  • 주로 좁은 범위에서 유리
  • 순차적 처리, Random Access 위주
  • 후행 테이블에 조인 위한 인덱스 생성 필요

 

II. 중첩 반복 조인 절차 구성도 및 사례

가. 중첩 반복 조인 절차 구성도

– R(외부, 선행 테이블) 레코드에 대해 S(내부, 후행) 모든 레코드 검색하여 조인 조건 만족 확인하여 조인

나. 중첩 반복 조인 절차

① R 테이블을 Full SCAN
② R 테이블의 코드 이용 S 테이블 인덱스 Unique SCAN
③ 인덱스 결과 이용하여 S 테이블 읽기(랜덤 액세스)
④ R 테이블과 S 테이블 조인 수행

 

III. 중첩 반복 조인 사용 사례 및 고려사항

가. 중첩 반복 조인 사용 SQL 사례

SELECT e.name, e.sal // 근로자 이름과 월급 출력
FROM emp e, dept d // 근로자, 부서 테이블 조회
WHERE d.region = “SEOUL” // 부서 지역이 “SEOUL”
AND e.deptno = d.deptno; // 근로자 부서번호 맵핑

나. 중첩 반복 조인 사용 시 고려사항

고려사항설명
결과 집합 최소화– 랜덤액세스 기반이므로 쿼리 수행 속도를 위해 결과 집합 최소화 하도록 설계
부분 범위 처리 유리– 조인의 순서에 수행 속도가 결정되므로   부분 범위 처리에 중첩 반복 조인 사용

 

One Comment

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^