STRING_AGG : Nouvelle fonction introduite en SQL2017

STRING_AGG concatène les valeurs des expressions de chaîne et place les valeurs de séparateur entre elles. Le séparateur n’est pas ajouté à la fin de la chaîne.

Cette fonction est équivalente au stuff utilisé dans les précédentes versions de SQL Server

DECLARE @TAB TABLE(libe VARCHAR(100));
INSERT INTO @tab(libe) VALUES('Test'), ('TOTO'), ('Titi'), ('tutu');

SELECT ISNULL(STRING_AGG(LIBE, '/'), '') FROM @TAB;
SELECT STUFF((SELECT '/' + LIBE FROM @TAB FOR XML PATH('') ), 1, 1, ''); 

Autre Méthode :

DECLARE @TAB TABLE(libe VARCHAR(100));
INSERT INTO @tab(libe) VALUES('Test'), ('TOTO'), ('Titi'), ('tutu');

Declare @CONCAT VARCHAR(MAX) = ''
SELECT @CONCAT = @CONCAT + CASE WHEN @CONCAT != '' THEN '/' ELSE '' END + LIBE FROM @TAB
SELECT @CONCAT

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s