MS-SQL SQL Server
MSSQL 피벗 예시
깨노비
2020. 3. 9. 17:30
728x90
반응형
MSSQL에서 테이블의 행과 열을 돌리기 위해 피벗을 사용한다.
DECLARE @month varchar(2000)
SET @month = '[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]' -- 세로로 출력되는 데이터를 가로로 출력하기위해 사용될 필드
DECLARE @SQL varchar(max)
SET @SQL = '
SELECT fact_nbr, fact_nme, ' + @month + ' -- 출력할 필드 원래대로 넣고 피벗 사용할 필드를 []로 싸서 넣는다
FROM (
SELECT group_month, fact_nbr, fact_nme, oee_per
FROM #TEMP
) T
-- 어떤값(group_month)에 있는 값들을 필드에 넣고 그 안에 어떤 데이터(MAX(T.oee_per))를 표시할 지 정한다
PIVOT(MAX(T.oee_per) FOR group_month IN (' + @month + ') ) AS PVT
order by fact_nbr
'
PRINT @SQL
exec (@SQL)
728x90
반응형