====== **3.2 실행계획의 유형** ====== ===== 3.2.1. 스캔(Scan)의 기본유형 ===== *** [[study:oracle:datadb:3week_1:01 | 스캔 ]] ** * 3.2.1.1. 전체테이블 스캔 * 3.2.1.2. ROWID 스캔 * 3.2.1.3. 인덱스 스캔 - 가)인덱스 유일 스캔(Index Unique Scan) - 나)인덱스 범위 스캔(Index Range Scan) - 다)인덱스 역순 범위 스캔(Index Range Scan Descending) - 라)인덱스 스킵 스캔(Index Skip Scan) - 마)인덱스 전체 스캔(Index Full Scan) - 바)인덱스 고속 전체 스캔(Index Fast Full Scans) * 3.2.1.4. B-Tree 클러스터 액세스(Cluster access) * 3.2.1.5. 해쉬 클러스터 액세스(Hash cluster access) * 3.2.1.6. 표본 테이블 액세스(Sample table scan) ===== 3.2.2. 데이터 연결을 위한 실행계획 ===== *** [[study:oracle:datadb:3week_1:02 | 조인 ]] ** * 3.2.2.1. 내포 조인(Nested loops Join) * 3.2.2.2. 정렬 병합 조인(Sort Merge Join) * 3.2.2.3. 해쉬 조인(Hash Join) * 3.2.2.4. 세미 조인(Semi Join) * 3.2.2.5. 카티젼 조인(Cartesian Join) * 3.2.2.6. 아우터 조인(Outer Join) * 3.2.2.7. 인덱스 조인 ===== 3.2.3. 연산 방식에 따른 실행계획 ===== *** [[study:oracle:datadb:3week_1:03 | 실행계획 ]] ** * 3.2.3.1. IN-List 탐침(Iterator) 실행계획 * 3.2.3.2. 연쇄(Concatenation) 실행계획 * 3.2.3.3. 원격(Remote) 실행계획 * 3.2.3.4. 정렬 처리(Sort Operation) 실행계획 * 3.2.3.5. 집합 처리(Set Operations) 실행계획 * 3.2.3.6. COUNT(STOPKEY) 실행계획