如何从以下示例中获取逗号分隔的结果,不带参数和单个查询:
select FirstName + ' ' LastName from table_of_Names where NameType='game show host'
Bob Barker, Willie Aammes, Steve Allen, Clive Anderson
感谢。
答案 0 :(得分:7)
使用参数(更好的性能):
DECLARE @list VARCHAR(max)
SELECT @list = COALESCE(@list + ', ' , '') + FirstName + ' ' + LastName
FROM table_of_Names where NameType='game show host'
SELECT @list
没有参数(不是高性能):
select stuff((select ','+ FirstName + ' ' + LastName
FROM table_of_Names where NameType='game show host'
for xml path(''), type).value('.', 'varchar(max)'), 1, 1, '') as NameList
答案 1 :(得分:-3)
我所知道的最简单的方法是编写一个迭代结果集的存储过程,并为除最后一行之外的所有行附加逗号和空格。