Afficher une colonne SQL Server en ligne avec des virgules

Afficher une colonne SQL Server en ligne avec des virgules ? Ou comment récupérer le résultat d’une requête en colonne ? Existe-t-il une requête simple pour transformer le résultat de colonne en ligne ? Comment le faire avec une seule requête ?

Par exemple, comment transformer l’affiche standard d’une colonne SQL Server, comme ceci:

Colonne
Résultat 1
Résultat 2
Résultat 3
Résultat 4

Et afficher cela  :
Résultat 1, Résultat 2, Résultat 3, Résultat 4

 

Comment afficher le résultat d’une requête SQL Server en ligne plutôt qu’en colonne?

Avec SQL Server, pour transformer le contenu d’une colonne SQL Server en ligne séparés par des virgules, plutôt qu’en colonne. Par exemple chaque résultat séparé par une virgule, utiliser la fonction SQL Server COALESCE().

DECLARE @resultat_en_ligne nvarchar(1000);

SELECT 	@resultat_en_ligne = COALESCE(@resultat_en_ligne+',','') + COLONNE
FROM 	BASE.dbo.TABLE;

SELECT 	@resultat_en_ligne;

Le résultat sera composé d’une ligne avec les résultats de la requête concaténés et séparés par une virgule. Pour aller plus loin, dans le même ordre d’idée, voici une requête SQL pour convertir une variable SQL Server XML en texte.

Soyez le premier à commenter

Laisser un commentaire