Выполнение MYSQL Group_Concat в SQL Server [дубликат]

На этот вопрос уже есть ответ здесь:

Как объединить текст из нескольких строк в одну текстовую строку на сервере SQL? 44 ответа

я портирую приложение, которое я написал для запуска на Apache, используя PHP и базу данных MySQL. В одном из запросов использовались функции MySQLConcat_WS а такжеGroup_Concat сначала объединить несколько разных столбцов в одну строку, а затем объединить все элементы, которые были сгруппированы поGroup_By пункт.

В качестве примера:

ID    Name    Candy
1     John    M&Ms
1     John    KitKat

Запрос:

Select Group_Concat(Concat_WS('-',Name, Candy) Separator '00--00') as UserCandy
From ExampleTable
Group By ID

Результат:

UserCandy
John-M&Ms00--00John-KitKat

Теперь я пытаюсь добиться того же результата в SQL Server 2008 с использованием PHP 5.4+.

Что я'мы пробовали:

SELECT Stuff(name + ';' + candy, 1, 0, '-----') AS UserCandy 
FROM   test 

Эта проблемаможно увидеть в скрипке, которую я настроил.

Ожидаемый результат будет:

-----John;MMs-----John;KitKat

Наконец, это становится еще сложнее, когда я добавляю больше столбцов в микс. Я хочу объединить результаты (как показано выше), где идентификатор совпадает. Это очень хорошо работает сgroup_concat потому что он будет автоматически объединять строки, которые были сгруппированы вместе.

Ответы на вопрос(1)

Ваш ответ на вопрос