用FOR XML PATH('') 实现一列多行拼接为一行

例如,把物料的多行描述拼接为一行描述,以"/"分隔:spa

  UPDATE T
  SET desc1=desc2
  FROM #TEMP_01 T,(
    SELECT billno,code,desc2 = (STUFF((SELECT '/' + b.desc1 FROM #TEMP_02 b
    WHERE b.billno =a.billno and b.code=a.code ORDER BY '/'+ b.desc1 FOR XML PATH('') ),1,1,'')) 
    FROM #TEMP_02 a 
    GROUP BY billno,code
    ) S
  WHERE T.billno=S.billno AND T.code=S.code 
相关文章
相关标签/搜索