Sql server For XML Path 学习

最近看到太多人问这种问题   自己也不太了解  就在网上学习学习 自己测试一番

CREATE TABLE test0621 (
id INT,
NAME NVARCHAR(max)
)

INSERT test0621 VALUES(1,'aa'),(1,'bb'),(1,'cc')
INSERT test0621 VALUES(2,'星期一'),(2,'星期二'),(2,'星期三')

DROP TABLE test0621

SELECT * FROM test0621

SELECT * FROM test0621 FOR XML PATH('') -- 把row 节点删除

SELECT * FROM test0621 FOR XML PATH('xx') -- 把row 节点 改为 xx

SELECT name+',' FROM test0621 FOR XML PATH('') -- 自定义显示

SELECT ID,(
SELECT name+',' FROM test0621 WHERE ID = A.ID FOR XML PATH('') -- 关联ID
) AS NAME
FROM test0621 A
GROUP BY A.ID --不group by 显示为多条

原文地址:https://www.cnblogs.com/jlz-s/p/5603873.html