首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求MSSQL列转行话语

2012-09-25 
求MSSQL列转行语句这个看起来似乎比较难.查询的结果是GroupNamePrice-----------------------------------

求MSSQL列转行语句
这个看起来似乎比较难.

查询的结果是
GroupName Price
-------------------------------------------------- ---------------------
VIP客户 1011.00
白金卡会员 225.00

(2 行受影响)

要转成
VIP客户 白金卡会员 
1011.00 225.00

有没有人指导下.不胜感激!

[解决办法]

SQL code
CREATE TABLE tb (GroupName VARCHAR(64),Price decimal(10,2))INSERT INTO tbSELECT 'VIP客户',1011.00 UNION ALLSELECT'白金卡会员',225.00UNION ALLSELECT'白金卡会员1',225.00UNION ALLSELECT'白金卡会员2',225.00UNION ALLSELECT'白金卡会员3',225.00UNION ALLSELECT'白金卡会员4',225.00UNION ALLSELECT'白金卡会员4',225.00--DROP TABLE tbdeclare @s nvarchar(max)set @s=''Select     @s=@s+','+quotename(GroupName)+'=max(case when [GroupName]='+quotename(GroupName,'''')+' then [price] else 0 end)'from tb group by GroupNameSELECT @s=SUBSTRING(@s,2,LEN(@s))EXEC ('select '+@s+' from tb ')/*VIP客户                                   白金卡会员                                   白金卡会员1                                  白金卡会员2                                  白金卡会员3                                  白金卡会员4--------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- ---------------------------------------1011.00                                 225.00                                  225.00                                  225.00                                  225.00                                  225.00(1 行受影响)*/ 

热点排行