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

Utilisation de la fonction COALESCE pour séparer les valeurs par des virgules

DECLARE @List VARCHAR(8000)

SELECT @List = COALESCE(@List + ',', '') + CAST(OfferID AS VARCHAR)
FROM   Emp
WHERE  EmpID = 23

SELECT @List 

Cette approche de concaténation agrégée n'est pas garantie de fonctionner. Si vous utilisez au moins SQL Server 2005 XML PATH ou les agrégats CLR sont préférés.

L'article définitif sur le sujet est Concatenating Row Values ​​in Transact-SQL