当前位置: 代码迷 >> Sql Server >> 从表一列记录合并成成字符串 ,作为主表的一个字段 for xml path,该如何处理
  详细解决方案

从表一列记录合并成成字符串 ,作为主表的一个字段 for xml path,该如何处理

热度:27   发布时间:2016-04-24 18:53:35.0
从表一列记录合并成成字符串 ,作为主表的一个字段 for xml path
订单
ID         订单号      .........
1          20130211
2          20130222

购物车
ID      ORDERID     商品名称

1          1           香蕉
2          1           苹果
3          1           草莓
4          2           芒果
5          2           凤梨

效果:
ID         订单号       商品列表
1          20130211    香蕉,苹果,草莓
2          20130222    芒果,凤梨

用 FOX XML PATH :

SELECT     ID, 订单号,  stuff
                          ((SELECT     ',' + 商品名称
                              FROM       商品列表  [怎么写条件?]
                                  FOR xml path('')), 1, 1, '') AS 商品列表
FROM         订单

请老师们指点一下,谢谢
 
------解决方案--------------------
SELECT  ID ,
        订单号 ,
        STUFF(( SELECT  ',' + 商品名称
                FROM    商品列表
                WHERE   订单.id = 商品列表.orderid
              FOR
                XML PATH('')
              ), 1, 1, '') AS 商品列表
FROM    订单
试试
------解决方案--------------------
被同事叫了下木看清
  相关解决方案