Sql聚合函数获取列表

Cor*_*rei 7 sql sql-server aggregate-functions sql-server-2008

喜!

如何创建聚合函数以获取聚合值的列表.

给出:

key     value
Andrei  1
Andrei  2
Andrei  3
Mihai   4
Mihai   5
Mihai   6
Run Code Online (Sandbox Code Playgroud)

我想要

key list
Andrei 1,2,3
Mihai 4,5,6
Run Code Online (Sandbox Code Playgroud)

ale*_*lin 2

MS SQL 解决方案: [注意:此解决方案仅适用于 SQL 2005 及更高版本。原始问题没有指定正在使用的版本。]

SELECT 
key
, STUFF((SELECT ',' + CAST([value] AS nvarchar(max)) FROM <#Table#> WHERE (key = Results.key) FOR XML PATH ('')),1,2,'') AS NameValues
FROM <#Table#> Results
GROUP BY key
Run Code Online (Sandbox Code Playgroud)