一个复杂的行列变换表头的问题

flyblackcat 2008-10-28 12:14:43
我有一句 select lable1,value1,label2,value2 from table where ....

得到的结果是

lable1|value1|label2|value2
---------------------------
book,somebook,date,somedate

如何能让返回的事

book | date
---------------------------
somebook,somedate

求教........
...全文
39 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyblackcat 2008-10-28
  • 打赏
  • 举报
回复
为什么我没有可用分阿 5555~
csdyyr 2008-10-28
  • 打赏
  • 举报
回复

create table tb(label1 varchar(10),value1 varchar(10),label2 varchar(10),value2 varchar(10))
insert tb
select 'book','somebook','date','somedate'

declare @sql varchar(8000)
set @sql=''
select @sql=@sql+','+' value1 as '''+label1+''','+' value2 as '''+label2+''''
from tb

set @sql='select '+stuff(@sql,1,1,'')+' from tb'
--print @sql
exec(@sql)

drop table tb
/*

book date
---------- ----------
somebook somedate
*/


flyblackcat 2008-10-28
  • 打赏
  • 举报
回复
cool, 谢谢 ccdzzr.

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧