문제
다음 테이블과 인덱스가 있을 때, 주어진 쿼리의 실행 결과는?
SQLCREATE TABLE PRODUCT ( CATEGORY VARCHAR(10), PRICE NUMBER, STATUS VARCHAR(5) ); CREATE INDEX IDX_PROD ON PRODUCT(CATEGORY, PRICE, STATUS); INSERT INTO PRODUCT VALUES('A', 1000, 'Y'); INSERT INTO PRODUCT VALUES('A', 2000, 'N'); INSERT INTO PRODUCT VALUES('B', 1500, 'Y'); INSERT INTO PRODUCT VALUES('B', 2500, 'Y'); INSERT INTO PRODUCT VALUES('A', 1800, 'Y'); SELECT COUNT(*) FROM PRODUCT WHERE CATEGORY = 'A' AND PRICE > 1200 AND STATUS = 'Y';
① 0 ② 1 ③ 2 ④ 3
정답
2번
해설
정답: ② 조건을 만족하는 데이터를 분석하면, CATEGORY='A'이면서 PRICE>1200이면서 STATUS='Y'인 행은 ('A', 1800, 'Y') 1건뿐입니다. ('A', 1000, 'Y')는 PRICE>1200 조건을 만족하지 않고, ('A', 2000, 'N')은 STATUS='Y' 조건을 만족하지 않습니다. 복합 인덱스 (CATEGORY, PRICE, STATUS)는 이 쿼리에서 효율적으로 활용됩니다.