腳本: /* 說明:sql server如何通過pivot對數據進行行列轉換 腳本來源:https://www.cnblogs.com/zhang502219048/p/12933347.html */ create table #t ( [員工工號] nvarchar(50), [員工姓名] nv ...
腳本:
/* 說明:sql server如何通過pivot對數據進行行列轉換 腳本來源:https://www.cnblogs.com/zhang502219048/p/12933347.html */ create table #t ( [員工工號] nvarchar(50), [員工姓名] nvarchar(50), [月份] nvarchar(50), [工資] int ) insert into #t values(N'01', N'張三', N'2020年01月', 2400) ,(N'02', N'李四', N'2020年01月', 3000) ,(N'01', N'張三', N'2020年02月', 2400) ,(N'02', N'李四', N'2020年02月', 3000) ,(N'03', N'王五', N'2020年02月', 5500) ,(N'01', N'張三', N'2020年03月', 2400) ,(N'02', N'李四', N'2020年03月', 1200) ,(N'03', N'王五', N'2020年03月', 5500) ,(N'04', N'趙六', N'2020年03月', 30000) ,(N'01', N'張三', N'2020年04月', 3000) ,(N'03', N'王五', N'2020年04月', 5500) ,(N'04', N'趙六', N'2020年04月', 30000) --行列轉換前的源數據 select * from #t --行列轉換後的目標數據 select [員工工號], [員工姓名] , [2020年01月], [2020年02月], [2020年03月], [2020年04月] from #t D pivot(max([工資]) for [月份] in ([2020年01月], [2020年02月], [2020年03月], [2020年04月])) Q order by [員工工號] drop table #t
腳本運行結果:
【轉載請註明博文來源:https://www.cnblogs.com/zhang502219048/p/12933347.html】