字符串的Sybase ASE 15聚合函数

Her*_*Zun 2 sql sybase aggregate-functions sybase-ase sybase-ase15

我找到了一种将不同行中的字符串聚合到sybase ASE 15中的单行中的方法。像这样:

id | Name                    Result: id | Names
-- - ----                            -- - -----
1  | Matt                            1  | Matt, Rocks
1  | Rocks                           2  | Stylus
2  | Stylus
Run Code Online (Sandbox Code Playgroud)

T-SQL中的FOR XML PATH之类的东西。

谢谢!

mar*_*rkp 5

Sybase ASE没有任何字符串聚合函数,例如list()group_concat(); 并且虽然有对的支持FOR XML,但不包括对PATH选件/功能的支持。

假设您要追加的行数未知/可变,则唯一的(ASE 15)T-SQL选项将是基于游标的解决方案。

如果发现自己正在使用ASE 16,则可以编写一个用户定义函数(UDF)来完成任务,例如:在ASE 16中模拟group_concat()