可能重複:
How do I Create a Comma-Separated List using a SQL Query?是否可以將SQL單列結果作爲逗號分隔的字符串?
我工作的一個Web應用程序。我需要單列選擇的SQL查詢,如
select
recordid
from
device
where
accountid in (1,2))
我需要這個結果格式化從逗號分隔的字符串從SQL。
可能重複:
How do I Create a Comma-Separated List using a SQL Query?是否可以將SQL單列結果作爲逗號分隔的字符串?
我工作的一個Web應用程序。我需要單列選擇的SQL查詢,如
select
recordid
from
device
where
accountid in (1,2))
我需要這個結果格式化從逗號分隔的字符串從SQL。
DECLARE @Concat varchar(max)
select @Concat = CAST(recordid as varchar(10)) + coalesce(',' + @Concat , '')
from device
where accountid in (1,2)
SELECT @Concat
您可以使用這樣的事情:
DECLARE @result AS VARCHAR(MAX)
SET @result = '' -- initialize with empty string to avoid NULL result
SELECT
@result = @result + ',' + CAST(recordid AS VARCHAR)
FROM
device
WHERE
accountid IN (1,2)
SELECT @result AS recordids
你也可以編寫一個自定義的CLR aggregate function,它最終可以比使用字符串連接(特別是對於一個非常大的結果集)更加優化。
避免不必要的逗號的智能方式... – 2010-06-23 11:31:12
是的這就解決了我的問題 謝謝 – Dharma 2010-06-23 11:48:30