SQLD 기출문제 예상문제 46번
다음 문제를 풀어보세요.
다음 중 아래 SQL 실행 계획에 대한 설명으로 가장 적절하지 않은 것을 고르시오.
다음은 ORDERS 테이블에서 ORDER_DATE가 특정 범위 내에 있는 주문들을 조회하는 SQL 쿼리의 실행 계획입니다.
SELECT /*+ INDEX(ORDERS ORDERS_ORDER_DATE_IDX) */
ORDER_ID,
CUSTOMER_ID,
ORDER_DATE,
TOTAL_AMOUNT
FROM ORDERS
WHERE ORDER_DATE >= DATE '2023-01-01'
AND ORDER_DATE < DATE '2023-02-01';
----------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
----------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 100 | 4000 | 3 (0)| 00:00:01 |
|* 1 | INDEX RANGE SCAN | ORDERS_ORDER_DATE_IDX | 100 | 4000 | 3 (0)| 00:00:01 |
----------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
1 - access("ORDER_DATE">=TO_DATE('2023-01-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND "ORDER_DATE"<TO_DATE('2023-02-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss'))
테이블 구조:
CREATE TABLE ORDERS (
ORDER_ID NUMBER PRIMARY KEY,
CUSTOMER_ID NUMBER,
ORDER_DATE DATE,
TOTAL_AMOUNT NUMBER
);
CREATE INDEX ORDERS_ORDER_DATE_IDX ON ORDERS (ORDER_DATE);