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

上一篇:boost::units模块实现带有转换的用户定义单位的测试程序


下一篇:TableLayout