SQL 피봇 테이블 (Pivot table)

피봇 테이블(Pivot Table)“은 특정한 기준에 따라 데이터를 재구조화하여 표현하는 방법을 말합니다.

피봇 테이블은 데이터를 더 직관적으로 이해하고 분석하기 위해 사용됩니다.

예를 들어 원본 데이터가 다음과 같을 때

dateproductquantity
2022-01-01A100
2022-01-01B150
2022-01-02A120
2022-01-02B180
<원본 데이터>

날짜와 제품을 기준으로 재구조화 하여 아래와 같이 피봇 테이블을 만들 수 있습니다.

dateAB
2022-01-01100150
2022-01-01120180
<피봇 테이블>

이렇게 하면 날짜와 제품에 따른 판매량이 더 직관적으로 확인됩니다.

이번 포스트에서는 SQL로 피봇 테이블을 어떻게 만드는지 정리해보았습니다.

피봇 테이블 쿼리

위의 테이블 예시처럼 원본 테이블에서 피봇 테이블로 변경하기 위해서는 아래와 같은 쿼리를 사용합니다.

SELECT
  date,
  SUM(CASE WHEN product = 'A' THEN quantity END) AS A,
  SUM(CASE WHEN product = 'B' THEN quantity END) AS B
FROM sales
GROUP BY date;

이 쿼리에서는 CASE 문을 사용하여 각 제품에 대한 판매량을 선택하고, SUM 함수를 사용하여 각 날짜에 대한 총 판매량을 계산합니다.

GROUP BY 절을 이용하여 날짜별로 그룹화하여 결과를 얻습니다.

Leave a Comment