2025-08-30 01:06

Tags: SQL

PIVOT

  • 긴 형식의 데이터(롱포맷) 넓은 형식의 데이터 변환(와이드 포맷)
  • 흔히 특정 열의 고유한 값들을 새로운 열로 만든다.
날짜상점명제품명판매량
2023-10-01강남점사과10
2023-10-01강남점바나나15
2023-10-01홍대점사과12
2023-10-01홍대점오렌지8
2023-10-02강남점사과11
2023-10-02홍대점바나나20
제품명강남점홍대점
사과2112
바나나1520
오렌지08
SELECT
    제품명,
    [강남점], -- PIVOT될 열 이름을 명시
    [홍대점]
FROM
    (
        -- PIVOT을 적용할 원본 데이터 선택
        SELECT
            제품명,
            상점명,
            판매량
        FROM
            SalesData
    ) AS SourceTable
PIVOT
(
    SUM(판매량) -- 값(Values)에 적용할 집계 함수
    FOR 상점명 IN ([강남점], [홍대점]) -- 열(Columns)로 만들 값들을 지정
) AS PivotTable;