CREATE TABLE TempTable ( [TestCode] NVARCHAR(1000) ) Insert TempTable values('a') Insert TempTable values('b') Insert TempTable values('c') Insert TempTable values('d') select stuff((SELECT ','+a.TestCode FROM( SELECT * FROM TempTable ) a FOR xml path('')),1,1,'')
例如多行数据:
a
b
c
d
变成多行:a,b,c,d
升级语法,合并分组后,多行变一列:
CREATE TABLE TempTable ( [TestCode] NVARCHAR(1000), [Name] NVARCHAR(1000) ) Insert TempTable values('a','zhang') Insert TempTable values('b','wang') Insert TempTable values('c','li') Insert TempTable values('a','zhao') select * from TempTable select [TestCode] as [TestCode], LevelItem = ( stuff(( select ',' + Name from TempTable where [TestCode] = a.[TestCode] for xml path('')),1,1,'') ) from TempTable a group by [TestCode]
浙公网安备 33010602011771号