SQLD관리 구문난이도 3MCQ

SQLD 관리 구문 기출문제 #947

문제

다음 테이블과 인덱스 상황에서 CBO가 인덱스를 사용하지 않고 FULL TABLE SCAN을 선택할 가능성이 가장 높은 경우는?

SQL
-- CUSTOMER 테이블 (총 1,000,000건) -- IDX_CUSTOMER_CITY: CITY 컬럼에 생성된 인덱스 -- 도시별 데이터 분포: 서울 800,000건, 기타 200,000건

① SELECT * FROM CUSTOMER WHERE CITY = '부산' ② SELECT * FROM CUSTOMER WHERE CITY = '서울' ③ SELECT COUNT(*) FROM CUSTOMER WHERE CITY = '대구' ④ SELECT CITY FROM CUSTOMER WHERE CITY = '인천'

정답

2

해설

CBO는 선택도가 매우 낮아 많은 행을 읽어야 하는 경우 인덱스 탐색보다 FULL TABLE SCAN이 더 효율적이라고 판단할 수 있습니다. 서울은 전체의 80%를 차지하므로 인덱스를 통한 랜덤 액세스보다 전체 스캔이 유리할 가능성이 큽니다. 반면 부산, 대구, 인천처럼 적은 비율의 값은 인덱스 사용 가능성이 더 높습니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] 관리 구문 기출 #947 | sqldpass