문제
다음 중 인덱스 스캔이 발생하지 않고 FULL TABLE SCAN이 선택되는 경우로 가장 적절한 것은?
① WHERE COL1 = 'A' (인덱스 존재, 선택도 0.1%) ② WHERE COL1 LIKE 'A%' (인덱스 존재, 선택도 5%) ③ WHERE COL1 > 100 (인덱스 존재, 선택도 70%) ④ WHERE COL1 IS NOT NULL (인덱스 존재, 선택도 99%)
정답
4번
해설
④ 정답. IS NOT NULL 조건으로 99% 데이터를 조회하는 경우, 대부분의 데이터를 읽어야 하므로 CBO는 FULL TABLE SCAN이 더 효율적이라고 판단합니다. ① 선택도 0.1%는 매우 낮아 인덱스 스캔이 효율적입니다. ② 선택도 5%는 일반적으로 인덱스 스캔이 선택됩니다. ③ 선택도 70%도 높지만 99%보다는 낮아 경우에 따라 인덱스가 사용될 수 있습니다.