“피봇 테이블(Pivot Table)“은 특정한 기준에 따라 데이터를 재구조화하여 표현하는 방법을 말합니다.
피봇 테이블은 데이터를 더 직관적으로 이해하고 분석하기 위해 사용됩니다.
예를 들어 원본 데이터가 다음과 같을 때
date | product | quantity |
---|---|---|
2022-01-01 | A | 100 |
2022-01-01 | B | 150 |
2022-01-02 | A | 120 |
2022-01-02 | B | 180 |
날짜와 제품을 기준으로 재구조화 하여 아래와 같이 피봇 테이블을 만들 수 있습니다.
date | A | B |
---|---|---|
2022-01-01 | 100 | 150 |
2022-01-01 | 120 | 180 |
이렇게 하면 날짜와 제품에 따른 판매량이 더 직관적으로 확인됩니다.
이번 포스트에서는 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
절을 이용하여 날짜별로 그룹화하여 결과를 얻습니다.
SQL 조건문 : IF, CASE
SQL에서는 IF 함수와 CASE 표현식을 사용하여 조건문 을 구현할 수 있습니다. 조건문 사용 시 DBMS에 따라 주의해서 사용하여야 합니다…. Read more
SQL 그룹화 함수 : GROUP BY
카테고리 별로 연산을 하고 싶을 때는 group by 문을 사용하면 됩니다. 이번 포스트에서는 group by를 사용하는 경우와, 사용법, 그룹 조건절에 대해서 간단히 정리해보았습니다…. Read more