sql server动态行列转换
原文链接:https://www.cnblogs.com/gaizai/p/3753296.html sql server动态行列转换 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:使用拼接SQL,静态列字段; 方法二:使用拼接SQL, 动态 列字段; 方法三:使用PIVOT关系运算符,静态列字段; 方法四:使用PIVOT关系运算符, 动态 列字段; 扩展阅读一:参数化表名、分组列、行转列字段、字段值; 扩展阅读二:在前面的基础上加入条件过滤; 参考文献(References) 二.背景(Contexts) 其实行转列并不是一个什么新鲜的话题了,甚至已经被大家说到烂了,网上的很多例子多多少少都有些问题,所以我希望能让大家快速的看到执行的效果,所以在动态列的基础上再把表、分组字段、行转列字段、值这四个行转列固定需要的值变成真正意义的参数化,大家只需要根据自己的环境,设置参数值,马上就能看到效果了(可以直接跳转至:“ 参数化动态PIVOT行转列 ”查看具体的脚本代码)。行转列的效果图如图1所示: (图1:行转列效果图) 三.实现代码(SQL Codes) (一) 首先我们先创建一个测试表,往里面插入测试数据,返回表记录如图2所示: --创建测试表 IF EXISTS (SELECT