2013-07-24 5 views
6

Я пытаюсь создать запятую delimted список имен в таблице, используя приведенный ниже запросSQL Четкая разделенный запятыми список

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

Это прекрасно работает, однако список не содержит дубликатов

Может кто-нибудь посоветовать как я сделал бы это DISTINCT, чтобы список не содержал дубликатов.

+0

http://blog.sqlauthority.com/2009/01/15/sql-server-remove-duplicate-entry-from-comma-delimited-string-udf/ Эта статья должна оказаться чрезвычайно полезным для вас , –

ответ

9

Полезно?

DECLARE @listStr VARCHAR(MAX) 
SELECT @listStr = COALESCE(@listStr+',' ,'') + name 
FROM (SELECT DISTINCT name FROM Production.Product) t 
SELECT @listStr 
+0

Да, это все, спасибо – simon1230756

+0

Приветствуем вас, Поприветствуйте вас, –

Смежные вопросы