Ruleというテーブルがあります。
RuleId Name
1 A1
2 A2
3 A3
.
.
.
今、私はすべての名前を単一の結果として欲しいです。
のようかもしれません@allnames = A1,A2,A3
ループを使用せずにこれに対するクエリを作成する方法を誰かがアドバイスできますか?
前もって感謝します...
Ruleというテーブルがあります。
RuleId Name
1 A1
2 A2
3 A3
.
.
.
今、私はすべての名前を単一の結果として欲しいです。
のようかもしれません@allnames = A1,A2,A3
ループを使用せずにこれに対するクエリを作成する方法を誰かがアドバイスできますか?
前もって感謝します...
これを試してみてください -
DECLARE @temp TABLE ([RuleId] INT, Name CHAR(2))
INSERT INTO @temp([RuleId], Name)
VALUES
(1, 'A1'),
(2, 'A2'),
(3, 'A3')
DECLARE @all_names NVARCHAR(MAX)
SELECT @all_names = STUFF((
SELECT DISTINCT ',' + Name
FROM @temp
--ORDER BY Name
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')
SELECT @all_names
出力 -
---------------
A1,A2,A3