我有这张桌子
Cream ---------- CHOCALATE GREEN TEST
想要输入像这样的选择查询
CHOCALATE,GREEN,TEST
答案 0 :(得分:6)
使用sysobjects可以解决这个问题:
DECLARE @List varchar(2000)
SELECT @List = COALESCE(@List + ',', '') + Cast(name As varchar(50))
FROM sys.sysobjects
SELECT @List As 'List'
答案 1 :(得分:4)
当我需要这样做时,我找到了一个有用的资源here,但正如其他人所说,使用COALESCE ......
DECLARE @List VARCHAR(1000)
SELECT @List = COALESCE(@List + ', ', '') + Name
FROM Cream
SELECT @List
答案 2 :(得分:3)
您可以使用coalesce
答案 3 :(得分:0)
执行此操作的最佳方法是创建聚合用户定义函数并将其注册到数据库中。
试试这个例子。
http://msdn.microsoft.com/en-us/library/ms165055.aspx
您的查询看起来像“SELECT dbo.Concatenate(Field)FROM Cream”
您将返回您所期望的“a,b,c,d ......”等等。