次のクエリを実行することがよくあります。
SELECT * FROM TABLE WHERE ID IN (1,2,3,4)
整数をコンマで返す結果セットを連結できる関数はありますか?
例えば
concatenate(SELECT ID FROM TABLE)
戻るだろう1,2,3,4
次のクエリを実行することがよくあります。
SELECT * FROM TABLE WHERE ID IN (1,2,3,4)
整数をコンマで返す結果セットを連結できる関数はありますか?
例えば
concatenate(SELECT ID FROM TABLE)
戻るだろう1,2,3,4
これでうまくいきます...これはアプリケーション層で行う方がはるかに効率的だと思いますが、これらのタイプのトリックに頼ることになる(レポート)場合があります。
DECLARE @listStr VARCHAR(MAX)
SELECT @listStr = COALESCE(@listStr+',' ,'') + cast(ID as varchar(10))
FROM table
SELECT @listStr
このトリックは Pinal Dave から学びました。参照: Create a Comma Delimited List Using SELECT Clause From Table Column