关于SQL Server将一列的多行内容拼接成一行的问题讨论


问题:

昨天遇到一个SQL Server的问题:需要写一个储存过程来处理几个表中的数据,最后问题出在我想将一个表的一个列的多行内容拼接成一行。
比如表中有两列数据 :

ep_classes ep_name
AAA 企业1
AAA 企业2
AAA 企业3
BBB 企业4
BBB 企业5

我想把这个表变成如下格式:

ep_classes ep_name
AAA 企业1,企业2,企业3
BBB 企业4,企业5

解决方法:

实现代码如下:

select ep_classes, ep_name = (stuff((select ',' + ep_name from ep_detail where ep_classes = a.ep_classes for xml path('')),1,1,'')) from ep_detail a group by ep_classes

表名为:ep_detail


文章作者: William Moore
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 William Moore !
评论
  目录