Multiple rows to one comma-separated value
本问题已经有最佳答案,请猛点这里访问。
我想在SQL Server中创建一个表值函数,我想以逗号分隔的值返回数据。
例如表:
1 2 3 4 5 6 | ID | VALUE ---+------- 1 | 100 1 | 200 1 | 300 1 | 400 |
现在,当我使用函数
1 2 3 | SELECT Func1(VALUE) FROM tbl WHERE ID = 1 |
我想要的输出是:
试验日期P></
1 2 | DECLARE @Table1 TABLE(ID INT, VALUE INT) INSERT INTO @Table1 VALUES (1,100),(1,200),(1,300),(1,400) |
查询P></
1 2 3 4 5 6 7 8 | 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 |
查询的结果集P></
1 2 3 4 5 | ╔════╦═════════════════════╗ ║ ID ║ List_Output ║ ╠════╬═════════════════════╣ ║ 1 ║ 100, 200, 300, 400 ║ ╚════╩═════════════════════╝ |