Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment puis-je extraire une liste d'ID d'une table SQL sous forme de chaîne de valeurs séparées par des virgules ?

MySQL

SELECT GROUP_CONCAT(t.prodid SEPARATOR ',')
  FROM PRODUCTS t
 WHERE t.prodtype = 'XYZ'

Oracle :

Il y a un excellent résumé des techniques d'agrégation de chaînes disponibles sur le site de Tim Hall.

SQL Server 2005+

SELECT STUFF((SELECT ','+ t.prodid
                FROM PRODUCTS t
               WHERE t.prodtype = 'XYZ'
             FOR XML PATH('')), 1, 1, '')