SQLD 기출문제 예상문제 80

다음 문제를 풀어보세요.

다음 중 PIVOT 절을 사용하여 월별 상품 판매량을 집계하는 SQL 쿼리 작성 시 발생할 수 있는 성능 문제를 해결하기 위한 가장 적절한 방법을 고르시오.

-- 상품 판매 테이블
CREATE TABLE SALES (
    SALE_ID NUMBER PRIMARY KEY,
    PRODUCT_ID NUMBER,
    SALE_DATE DATE,
    QUANTITY NUMBER
);

-- 월별 상품 판매량 집계 쿼리 (PIVOT 사용)
SELECT *
FROM (
    SELECT PRODUCT_ID, TO_CHAR(SALE_DATE, 'YYYY-MM') AS SALE_MONTH, QUANTITY
    FROM SALES
) PIVOT (
    SUM(QUANTITY)
    FOR SALE_MONTH IN ('2023-01' AS JAN, '2023-02' AS FEB, '2023-03' AS MAR, '2023-04' AS APR, '2023-05' AS MAY, '2023-06' AS JUN, '2023-07' AS JUL, '2023-08' AS AUG, '2023-09' AS SEP, '2023-10' AS OCT, '2023-11' AS NOV, '2023-12' AS DEC)
);