你好,在SQL中如何将一个表的一列取出来作为一个表的表头呢?

如题所述

楼主可搜索 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')

参考资料:http://blog.csdn.net/xys_777/archive/2010/06/22/5685953.aspx

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-07
可以用临时表处理 先把数据存到临时表中 select * into #aaa from 原表再用update更新表里的数据 update 原表 set [身高]=B.[体重],[体重]=B.[追问

大神,不是很理解啊!可不可以来个简单的例子啊

相似回答