Как объеденить значения несколько одинаковых строк в одну (MSSQL)

Есть несколько строк в таблице, которые разделены датами, но с одинаковыми именами
table_date name
2014-01-01 name1
2014-02-01 name1
2014-03-01 name1
2014-04-01 name2
2014-05-01 name2

Как создать запрос, чтобы показало в виде: table_date name
2014-01-01 name1 2014-04-01 name2


Ответы (1 шт):

Автор решения: Vasya Milovidov

Нашёл вот такой ответ вот тут, тут и тут:


DECLARE @temp TABLE (name NVARCHAR(50))

INSERT INTO @temp (name)
VALUES ('kim'),('lee'),('park'),('cho')

SELECT STUFF((
    SELECT ',' + name
    FROM @temp
    FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')

→ Ссылка