MSSQL—列记录合并
首先,先建一个表,并添加一些数据,建表代码如下:
If OBJECT_ID(N'Demo') Is Not Null Begin Drop Table Demo End Else Begin Create Table Demo( Area nvarchar(30), Name nvarchar(20)) Insert Into Demo(Area,Name) Values(N'北京',N'张三'), (N'上海',N'李四'), (N'深圳',N'王五'), (N'深圳',N'钱六'), (N'北京',N'赵七'), (N'北京','Tom'), (N'上海','Amy'), (N'北京','Joe'), (N'深圳','Leo') End Go
如果仅将Name列合并,不遵循任何条件的话,我们可以采用两种方法,第一种就是采用FOR XML PATH方式,代码如下:
SELECT ','+Name FROM dbo.Demo FOR XML PATH('')