SQLD관리 구문옵티마이저/인덱스난이도 1MCQ

SQLD 옵티마이저/인덱스 기출문제 #203

문제

다음 SQL에서 인덱스 사용을 방해하는 요소로 가장 적절한 것은?

SQL
CREATE INDEX idx_emp_salary ON emp(salary);
SQL
SELECT * FROM emp WHERE salary * 1.1 > 5000;

① 산술 연산자 사용 ② 인덱스 컬럼에 함수 적용 ③ 비교 연산자 사용 ④ 상수값 사용

정답

2

해설

② WHERE 절에서 인덱스 컬럼(salary)에 직접 산술 연산(* 1.1)이 적용되면 인덱스를 사용할 수 없습니다. 이는 함수를 적용한 것과 동일한 효과로 인덱스의 정렬된 구조를 활용할 수 없게 됩니다. ① 산술 연산자 자체는 문제없으나 인덱스 컬럼에 적용되는 것이 문제입니다. ③ 비교 연산자(>)는 인덱스 사용에 문제가 없습니다. ④ 상수값(5000) 사용은 인덱스 사용에 영향을 주지 않습니다.

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

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

[SQLD] 옵티마이저/인덱스 관리 구문 기출 #203 | sqldpass