(1000 row(s) affected)Table '#TestData'. Scan count 1001, logical reads 2411, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.(1 row(s) affected) SQL Server Execution Times: CPU time = 234 ms, elapsed time = 3175 ms.
(1000 row(s) affected)Table '#TestData'. Scan count 1001, logical reads 2411, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.(1 row(s) affected) SQL Server Execution Times: CPU time = 172 ms, elapsed time = 561 ms.
WITH CTE AS(SELECT DISTINCT AccountNumber FROM #TestData)SELECT AccountNumber, CommaList = STUFF(( SELECT ',' + Value FROM #TestData WHERE AccountNumber = CTE.AccountNumber ORDER BY Value FOR XML PATH('')),1,1,'') -- no TYPE.value FROM CTE;
WITH CTE (Data) AS(SELECT 'Rolling Stones' UNION ALLSELECT 'Hall & Oates' UNION ALLSELECT 'One <> Two')SELECT [WithType] = STUFF(( SELECT ',' + Data FROM CTE FOR XML PATH(''),TYPE).value('.','varchar(max)'),1,1,''), [WithOutType] = STUFF(( SELECT ',' + Data FROM CTE FOR XML PATH('')),1,1,'');