当前位置: 代码迷 >> Sql Server >> SQL 把表的字段串下床 返回一张视图或者用函数
  详细解决方案

SQL 把表的字段串下床 返回一张视图或者用函数

热度:91   发布时间:2016-04-24 09:02:37.0
SQL 把表的字段串起来 返回一张视图或者用函数
比如 有表A 字段    
UID   UserName   mobile
  1         张三            1333
 1          张四            1333
 1         张五            1333
 2         张六            1333
 2         张七            1333

我需要返回一张表

UID   Str

1      张三:1333;张四:1333;  张五: 1333
2     张六:1333;张七:1333

------解决思路----------------------

select x.uid,stuff((select ';'+username+':'+mobile from tb where uid=x.uid for xml path('')),1,1,'') from tb x group by x.uid

------解决思路----------------------
SELECT T1.UID
,STUFF((SELECT';'+UserName+','+mobile FROM A T2
WHERE T1.UID=T2.UID
FOR XML PATH(''))
,1,1,'')[Str]
FROM A T1
GROUP BY T1.UID
  相关解决方案