Search code examples
sqlt-sql

SQL Distinct comma delimited list


I am trying to create a comma delimted list of names in a table using the below query

DECLARE @listStr VARCHAR(MAX)
SELECT @listStr = COALESCE(@listStr+',' ,'') + Name
FROM Production.Product
SELECT @listStr

This works fine, however the list does contain duplicates

Can anyone advise how I would make this DISTINCT so the list does not contain duplicates.


Solution

  • Is it useful ?

    SELECT STRING_AGG(name, ',')
    FROM (SELECT DISTINCT name FROM Production.Product) t