好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

sql server通过pivot对数据进行行列转换的方法

脚本 :

/*
说明:sql server如何通过pivot对数据进行行列转换
*/
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
orde  javascript  r by [员工工号]
drop table #t

脚本运行结果:

总结

到此这篇关于sql server通过pivot对数据进行行列转换的方法的文章就介绍到这了,更多相关sql server pivot行列转换内容 www.cppcns.com 请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

查看更多关于sql server通过pivot对数据进行行列转换的方法的详细内容...

  阅读:24次