Я уже нашел эту интересную тему
Имитация функции MySQL group_concat в Microsoft SQL Server 2005?
use test
go
create table methods (
id int identity,
id_exam int,
method int
)
go
insert into methods (id_exam,method) values (1,5)
insert into methods (id_exam,method) values (1,2)
insert into methods (id_exam,method) values (1,5)
insert into methods (id_exam,method) values (2,1)
insert into methods (id_exam,method) values (3,5)
insert into methods (id_exam,method) values (3,2)
insert into methods (id_exam,method) values (3,2)
insert into methods (id_exam,method) values (4,5)
insert into methods (id_exam,method) values (4,3)
select
id_exam,
method = replace ((select method AS [data()]
from methods
where id_exam = a.id_exam
order by id_exam for xml path('')), ' ', ',')
from methods a
where id_exam is not null
group by id_exam
, что дает мне
1 5,2,5
2 1
3 5,2,2
4 5,3
Однако я хотел бы удалить дубликаты из каждого экзамена и отсортировать объединенные результаты, чтобы получить
1 2,5
2 1
3 2,5
4 3,5
Спасибо.