日期:2014-05-17  浏览次数:20608 次

请进
Table1
ID  SName  SID
1   a1     1
1   a2     2
1   a3     3
2   b1     4
2   b2     5
3   c1     6
3   c2     7

数据就像上面,我要的结果是这样的
ID  SName     SID
1   a1,a2,a3  1,2,3
2   b1,b2     4,5
3   c1,c2     6,7
就是根据ID,如果ID相同,则把Sname和SID的内容都相加起来,用导号隔开,求高手指教这语句要怎么写

 

------解决方案--------------------

select id,stuff((select ','+sname from tb b where b.id=a.id for xml path('')),1,1,'')sname,stuff((select ','+rtrim(SID) from tb b where b.id=a.id for xml path('')),1,1,'')sid from tb a group by id

------解决方案--------------------
mysql应该放到别的板块去问
------解决方案--------------------
在左边版块,选择【数据库开发】→【其他数据库开发】→【mysql】那里发帖吧