你好,在SQL中如何将一个表的一列取出来作为一个表的表头呢?
2个回答
展开全部
楼主可搜索 SQL行转列 看能不能找到更多相关信息
declare @sql varchar(MAX)
--获取所有表头列,用],[隔开
select @sql = isnull(@sql + '],[' , '') + 表头列 from 表 group by 表头列
--首尾加方括号
set @sql = '[' + @sql + ']'
--执行动态SQL语句
exec ('select * from (select * from 表) a pivot (max(数据列) for 表头列 in (' + @sql + ')) b')
declare @sql varchar(MAX)
--获取所有表头列,用],[隔开
select @sql = isnull(@sql + '],[' , '') + 表头列 from 表 group by 表头列
--首尾加方括号
set @sql = '[' + @sql + ']'
--执行动态SQL语句
exec ('select * from (select * from 表) a pivot (max(数据列) for 表头列 in (' + @sql + ')) b')
参考资料: http://blog.csdn.net/xys_777/archive/2010/06/22/5685953.aspx
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询