在SQL Server数据库中,行列转换是常见的数据操作需求,通过内置函数PIVOT(行转列)和UNPIVOT(列转行)可以轻松实现。这两个函数分别用于满足行数据转为列数据和列数据转为行数据的需求。行转列(PIVOT)PIVOT的语法如下:select * from 源表名 as 表别名 pivot(聚合函数(字段名) for 列名字段名 in...
SELECT @sql=@sql+列名+',' FROM 表名;SELECT @sql=LEFT(@sql,LEN(@sql)-1)+''';EXEC(@sql);另一种方法是利用SQL Server 2005及以上版本的XML Path特性。通过SELECT语句配合FOR XML PATH(''),可以将多行数据转换为一行,但需要进一步处理以移除多余的逗号。具体实现如下:sql SELECT 列名+...