Maison >base de données >tutoriel mysql >Comment concaténer des lignes avec un délimiteur virgule dans SQL Server ?
Joindre des lignes à l'aide d'un délimiteur de virgule dans SQL Server
Cet article explique comment fusionner plusieurs lignes de données dans une chaîne séparée par des virgules dans SQL Server. Dans MS SQL Server, cela peut être réalisé efficacement en utilisant une combinaison de fonctions STUFF et FOR XML.
Voici un exemple de tableau (@T) :
<code class="language-sql">DECLARE @T AS TABLE ( Name varchar(10) ) INSERT INTO @T VALUES ('John'), ('Vicky'), ('Sham'), ('Anjli'), ('Manish')</code>
Pour concaténer les noms dans une chaîne séparée par des virgules, exécutez la requête suivante :
<code class="language-sql">SELECT STUFF(( SELECT ',' + Name FROM @T FOR XML PATH('') ), 1, 1, '') As [output];</code>
Cette requête utilise FOR XML pour générer une hiérarchie XML de noms, puis utilise la fonction STUFF pour construire la chaîne finale. Le résultat sera :
<code>output John,Vicky,Sham,Anjli,Manish</code>
Cette méthode concatène efficacement plusieurs lignes de données en une seule chaîne, ce qui la rend idéale pour des tâches telles que la génération de listes séparées par des virgules ou l'exportation de données dans un format spécifique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!