📌 2.16 피벗(PIVOT) & 언피벗(UNPIVOT)
✅ 1. 피벗(PIVOT)이란?
- 행의 데이터를 열(column)로 바꾸는 것.
- 데이터를 보고서처럼 정리해서 보기 좋게 만들 때 사용.
- 특히 엑셀 피벗테이블처럼 한눈에 통계 보기 좋게 정리하고 싶을 때 유용.
✅ 2. 언피벗(UNPIVOT)이란?
- 열(column)의 데이터를 다시 행(row) 형태로 바꾸는 것.
- 즉, 피벗의 반대.
- 데이터 정규화나 분석용 가공 등에 활용됨.

✅ 3. 왜 시험에 나올까?
- 2024년부터 시험 범위에 새롭게 추가됨.
- 특히 엑셀 사용자들에게 익숙한 기능이고, SQL에서도 동일한 개념이 반영됨.
- 실제 업무에서 통계표/보고서 작성 시 자주 활용됨.
✅ 4. 문법 포인트 – 외우는 공식
📍 PIVOT 문법
SELECT *
FROM (
SELECT dept_name, job, empno
FROM emp_table
)
PIVOT (
COUNT(empno)
FOR dept_name IN ('SALES' AS SALES, 'HR' AS HR, 'DEV' AS DEV)
);
- COUNT(empno) → 집계할 값
- FOR dept_name IN (...) → 열로 바꿀 컬럼 지정
- AS를 써서 새로운 열 이름 지정 가능
📍 UNPIVOT 문법
SELECT *
FROM (
SELECT job, SALES, HR, DEV
FROM pivoted_table
)
UNPIVOT (
emp_count FOR dept_name IN (SALES, HR, DEV)
);
- 열들을 다시 행으로 펼칠 때 사용
- emp_count는 새로 생길 열의 이름
- dept_name은 열이었던 이름들이 값으로 들어가는 컬럼
✅ 5. 외우기 쉬운 요령
✅ 6. 시험 포인트
- 피벗 문법의 PIVOT, FOR, IN, 집계함수 위치를 정확히 기억.
- 열이름을 결과로 쓰는 방식에 익숙해질 것.
- 언피벗에서는 열 → 값으로 전환됨을 주의.
- 문제에서 결과 형태를 보고 피벗/언피벗 여부를 묻는 문제가 자주 출제될 가능성 있음.
🎯 정리 한 줄 요약
- 피벗: 행 → 열 (보기 쉽게)
- 언피벗: 열 → 행 (분석 쉽게)
- 문법 구조는 암기, 표 형태 변화는 이해 중심
'SQLD > 2과목 : SQL 기본 및 활용' 카테고리의 다른 글
2.18 복합 쿼리 예제 3 (0) | 2025.07.04 |
---|---|
2.17 정규 표현식 (0) | 2025.07.04 |
2.15 계층형 질의 (1) | 2025.07.04 |
2.14 Top-N 쿼리 (0) | 2025.07.04 |
2.13 윈도우 함수 (0) | 2025.07.03 |