2017-07-13 1 views
0

Je suis findind un moyen de chaînes globales de différents lignes dans une seule ligne dans sybase ASE 15. Comme ceci:Sybase ASE 15 Fonction d'agrégation pour les chaînes

id | Name     Result: id | Names 
-- - ----       -- - ----- 
1 | Matt       1 | Matt, Rocks 
1 | Rocks       2 | Stylus 
2 | Stylus 

Quelque chose comme pour le chemin XML dans T-SQL .

Merci!

Répondre

1

Sybase ASE n'a aucune fonction d'agrégation de chaînes comme list() ou group_concat(); et bien qu'il existe un certain support pour FOR XML, il n'inclut pas le support de l'option/fonctionnalité PATH.

En supposant que vous puissiez avoir un nombre inconnu/variable de lignes à ajouter, vous êtes seulement (ASE 15) L'option T-SQL serait une solution basée sur un curseur.

Si vous vous trouvez travailler avec ASE 16, vous pouvez écrire une fonction définie par l'utilisateur (UDF) pour accomplir la tâche, par exemple: emulate group_concat() in ASE 16