글수 2
1. 인덱스가 있는 컬럼을 표현식 또는 함수로 변형시킬경우
2. 부정연산자 (!=, <>) 를 사용할경우 (단일 인덱스일 경우)
- 이유는 인덱스는 검색하고자 하는 컬럼의 데이터가 전체 데이터의 약 10% 범위에 있을때 가장 빠르게 검색할수 있는데 부정(!=, <>) 은 4~10% 의 범위를 벗어난 범위를 의미하기때문에 인덱스가 있다하더라도 오라클 서버는 인덱스를 사용하지 않고 대신 전체 테이블 스캔을 한다.
2. 부정연산자 (!=, <>) 를 사용할경우 (단일 인덱스일 경우)
- 이유는 인덱스는 검색하고자 하는 컬럼의 데이터가 전체 데이터의 약 10% 범위에 있을때 가장 빠르게 검색할수 있는데 부정(!=, <>) 은 4~10% 의 범위를 벗어난 범위를 의미하기때문에 인덱스가 있다하더라도 오라클 서버는 인덱스를 사용하지 않고 대신 전체 테이블 스캔을 한다.
3. IS NULL 을 사용할 경우 (단일 인덱스일 경우)
- 왜냐하면 인덱스는 NULL 값이 포함되지 않으므로 IS NULL 의 의미는 인덱스가 없음을 의미하고 전체 테이블 스캔으로 데이터를 검색한다.
- 왜냐하면 인덱스는 NULL 값이 포함되지 않으므로 IS NULL 의 의미는 인덱스가 없음을 의미하고 전체 테이블 스캔으로 데이터를 검색한다.
4. 와일드 카드로 시작하는 LIKE 문은 인덱스를 사용하는 경우(단일 인덱스일 경우)
->이유는 검색해야 할 범위를 알수 없기 때문에 오라클 서버는 전체 테이블 스캔이 더 빠른 검색을 해줄수 있다고 판단하여 인덱스를 사용하지 않는다. 단 와일드카드(%) 로 끝나는 검색조건에는 인덱스가 사용된다.
->이유는 검색해야 할 범위를 알수 없기 때문에 오라클 서버는 전체 테이블 스캔이 더 빠른 검색을 해줄수 있다고 판단하여 인덱스를 사용하지 않는다. 단 와일드카드(%) 로 끝나는 검색조건에는 인덱스가 사용된다.

이 글의 권한은 dbtown.net 에 있습니다.
자료를 스크랩하실땐 출처를 밝혀주세요 ^^
Skin Technical Note
Sites validated CSS, XHTML & IE6, IE7, FireFox, Opera and Safari Accessiable. Generator & Powered by Zeroboard XE. This site inspired by Slabovia and developed by WTA

