Più righe a un valore separato da virgole

Voglio creare una funzione valutata tabella in SQL Server, che voglio restituire i dati in valori separati da virgole.

Ad esempio tabella: tbl

 ID | Value ---+------- 1 | 100 1 | 200 1 | 300 1 | 400 

Ora quando Func1(value) la query utilizzando la funzione Func1(value)

 SELECT Func1(Value) FROM tbl WHERE ID = 1 

L’output che voglio è: 100,200,300,400

Dati di test

 DECLARE @Table1 TABLE(ID INT, Value INT) INSERT INTO @Table1 VALUES (1,100),(1,200),(1,300),(1,400) 

domanda

 SELECT ID ,STUFF((SELECT ', ' + CAST(Value AS VARCHAR(10)) [text()] FROM @Table1 WHERE ID = t.ID FOR XML PATH(''), TYPE) .value('.','NVARCHAR(MAX)'),1,2,' ') List_Output FROM @Table1 t GROUP BY ID 

Set di risultati

 ╔════╦═════════════════════╗ ║ ID ║ List_Output ║ ╠════╬═════════════════════╣ ║ 1 ║ 100, 200, 300, 400 ║ ╚════╩═════════════════════╝