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

求多行转列解决思路

2012-11-07 
求多行转列idzhia1a2a2b1b3结果:idzhia1,2,2b1,3记得以前做过,很久没做,忘记了。[解决办法]SQL codeWITH te

求多行转列
id zhi
a 1
a 2
a 2
b 1
b 3



结果:
id zhi
a 1,2,2
b 1,3

记得以前做过,很久没做,忘记了。

[解决办法]

SQL code
WITH test (id, zhi) AS (  SELECT 'a', 1 UNION ALL  SELECT 'a', 2 UNION ALL  SELECT 'a', 2 UNION ALL  SELECT 'b', 1 UNION ALL  SELECT 'b', 3)  select a.id, stuff((select ','+CONVERT(VARCHAR(5),zhi) from test b         where b.id=a.id         for xml path('')),1,1,'') 'zhi' from test a group by  a.id  /* id   zhi ---- ---------------------------------------------------------------------------------------------------------------- a    1,2,2 b    1,3  (2 行受影响)   */ 

热点排行