使用 字符串连接的
stuff()withselect ... for xml path ('')方法。create table t (ProductId int);insert into t values (68) ,(74) ,(58) ,(64) ,(67);select ProductIds = stuff(( select ','+convert(varchar(10),ProductId) from t for xml path (''), type).value('.','nvarchar(max)') ,1,1,'')rextester demo: http://rextester.com/RZQF31435
returns:
+----------------+| ProductIds |+----------------+| 68,74,58,64,67 |+----------------+
编辑:在SQL Server 2017+中,您可以使用string_agg(),并且
根据Jeffry Schwartz的文章,性能似乎相同: Should I Replace
My FOR XML PATH String Merges with String_agg?



