SQLD 기출문제 예상문제 87

다음 문제를 풀어보세요.

다음 중 아래 SQL 실행 계획에 대한 설명으로 가장 적절하지 않은 것을 고르시오.

다음은 고객(CUSTOMER) 테이블과 주문(ORDERS) 테이블에 대한 SQL 실행 계획입니다.

-- 고객 테이블 구조
CREATE TABLE CUSTOMER (
    CUSTOMER_ID NUMBER PRIMARY KEY,
    CUSTOMER_NAME VARCHAR2(50),
    CITY VARCHAR2(50)
);

-- 주문 테이블 구조
CREATE TABLE ORDERS (
    ORDER_ID NUMBER PRIMARY KEY,
    CUSTOMER_ID NUMBER REFERENCES CUSTOMER(CUSTOMER_ID),
    ORDER_DATE DATE,
    TOTAL_AMOUNT NUMBER
);

-- SQL 쿼리
SELECT C.CUSTOMER_NAME, SUM(O.TOTAL_AMOUNT)
FROM CUSTOMER C
JOIN ORDERS O ON C.CUSTOMER_ID = O.CUSTOMER_ID
WHERE C.CITY = 'Seoul'
GROUP BY C.CUSTOMER_NAME;

-- 실행 계획
----------------------------------------------------------------------------------------------------
| Id  | Operation            | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT     |          |     1 |    52 |     6   (17)| 00:00:01 |
|   1 |  HASH GROUP BY       |          |     1 |    52 |     6   (17)| 00:00:01 |
|   2 |   NESTED LOOPS       |          |     1 |    52 |     5   (20)| 00:00:01 |
|   3 |    TABLE ACCESS FULL | CUSTOMER |     1 |    26 |     2   (50)| 00:00:01 |
|*  4 |    INDEX UNIQUE SCAN | SYS_C0000|     1 |    26 |     0    (0)| 00:00:01 |
----------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   4 - access("C"."CUSTOMER_ID"="O"."CUSTOMER_ID")
   5 - filter("C"."CITY"='Seoul')