SQLServer 中实现类似MySQL中的group_concat函数的功能
SQLServer中没有MySQL中的group_concat函数,可以把分组的数据连接在一起。
后在网上查找,找到了可以实现此功能的方法,特此记录下。
SELECT a, stuff((SELECT ',' + b FROM #tb WHERE a = t.a FOR xml path('')), 1, 1, '' )AS b from # tb AS t GROUP BY a;
先对a列进行分组,对分组中的b以Xml形式输出,再使用stuff将开关多出的,删掉。
具体实现参考:http://blog.itnmg.net/sqlserver-group_concat/
对于其实使用到的for xml path 参考 http://www.cnblogs.com/doubleliang/archive/2011/07/06/2098775.html
stuff 参考 http://msdn.microsoft.com/zh-cn/library/ms188043.aspx