SQLD 기출문제 예상문제 100

다음 문제를 풀어보세요.

다음 중 아래 SQL을 실행했을 때 예상되는 성능 문제와 그 해결 방안으로 가장 적절하지 않은 것을 고르시오.

-- 주문(ORDERS), 고객(CUSTOMERS) 테이블

CREATE TABLE CUSTOMERS (
    CUSTOMER_ID INT PRIMARY KEY,
    CUSTOMER_NAME VARCHAR(255)
);

CREATE TABLE ORDERS (
    ORDER_ID INT PRIMARY KEY,
    CUSTOMER_ID INT,
    ORDER_DATE DATE,
    FOREIGN KEY (CUSTOMER_ID) REFERENCES CUSTOMERS(CUSTOMER_ID)
);

-- 데이터는 충분히 많다고 가정

SELECT
    C.CUSTOMER_NAME,
    COUNT(O.ORDER_ID) AS ORDER_COUNT
FROM
    CUSTOMERS C
LEFT OUTER JOIN
    ORDERS O ON C.CUSTOMER_ID = O.CUSTOMER_ID
WHERE
    O.ORDER_DATE BETWEEN '2023-01-01' AND '2023-12-31'
GROUP BY
    C.CUSTOMER_NAME
HAVING
    COUNT(O.ORDER_ID) > 10;