차근차근 생활 & 코딩

[SQL] MSSQL 행/열 변환 - 피벗(PIVOT) 사용하기 본문

IT/SQL

[SQL] MSSQL 행/열 변환 - 피벗(PIVOT) 사용하기

ssilook 2021. 8. 27. 19:11
반응형

 

이번 시간에는 MSSQL에서 사용할 피벗에 대해 알아보도록 하겠습니다.

 

SQL 작업을 진행하다 보면 행과 열을 바꾸어야 하는 상황이 발생되게 됩니다.

 

아래 예시를 들어 봤는데요.

 

엑셀에서는 저건 금방 몇번의 클릭만으로도 작업할 수 있습니다.

 

하지만 SQL에서는 코드를 많이 아셔야 사용할수 있는 것이라 사실 이해 안 되시더라도

 

많이 사용해보길 권장합니다.

 

엑셀과 마찬가지로 피벗 기능은 많이 많이 사용하는 기능입니다.

 

 

PIVOT을 사용하시려면 서브 쿼리를 사용하셔야 합니다.

 

SELECT * FROM TABLE PIVOT 이렇게 바로 코드를 쓰시면 에러가 발행하게 됩니다.

 

규칙이라 생각하시고 SELECT를 또 다른 SELECT로 감싸준 후 PIVOT을 사용하시길 바랍니다.

 

아래 예제만 잘 보시면 어렵지 않게 PIVOT을 마스터하실 수 있습니다.

 

 

빨간줄

 : SUM 함수를 통해 Values 값을 다 더함.

파란줄

 : 변경할 행렬을 Days로 결정.

녹색줄

 : Days 행렬 항목 안에 값을 추가함.

 

 

 

# PIVOT 코드

SELECT * FROM (
	SELECT Days, Values
	 FROM TABLE
) T1
PIVOT ( SUM(Values) FOR Days IN([1], [2], [3], [4], [5], [6])) AS PVT
GO

 

수고하셨습니다.

반응형
Comments