[Oracle] 인덱스 기본 사용법, Range Scan, 인덱스 사용조건


[Oracle] 인덱스 기본 사용법, Range Scan, 인덱스 사용조건

인덱스 기본 사용법 인덱스를 Range Scan 하는 게 기본 사용법이다. 인덱스 컬럼(선두 컬럼)을 가공하지 않아야 인덱스를 정상적으로 사용할 수 있다. 인덱스 정상적 사용은 리프 블록에서 스캔 시작점을 찾아 거기서부터 스캔하다가 중간에 멈추는 것을 의미 리프 블록 일부만 스캔하는 index Range Scan을 의미 인덱스 컬럼을 가공하면 스캔 시작점을 찾을 수 없고 멈출 수도 없어 리프 블록 전체를 스캔 Index Full Scan 방식으로 작동한다. 인덱스 Range Scan 할 수 없는 이유 인덱스 컬럼을 가공하면 인덱스를 정상적으로 사용할 수 없다. 인덱스 스캔 시작점을 찾을 수 없기 때문이다. Index Range Scan은 인덱스에서 일정 범위를 스캔한다는 뜻 그렇기에 시작지점과 끝지점이 있어야한다. LIKE를 대한%으로 사용하면 특정 구간에 모여있기에 Range Scan이 가능하지만 %대한%을 포함하는 값은 전체 구간에 걸쳐 흩어져 있어서 Range Scan 불가능 ...


#Oracle #인덱스

원문링크 : [Oracle] 인덱스 기본 사용법, Range Scan, 인덱스 사용조건