Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Группировка полей типа "VarChar"  [new]
Schtass
Member

Откуда:
Сообщений: 24
Есть таблица table1 с полями fmain и fchild. Оба поля имеют тип varchar.
Содержимое таблицы такое:
fmain fchild
'a' 'fc_a1'
'a' 'fc_a2'
'a' 'fc_a3'
'b' 'fc_b1'
'b' 'fc_b1'
'b' 'fc_b2'.

Нужно сгруппировать данные этой таблицы так, чтобы получлась в результате такая вот таблица
fmain fchild
'a' 'fc_a1, fc_a2, fc_a3'
'b' 'fc_b1, fc_b1, fc_b2'.

Можно ли сделать такое одним запросом?
Спасибо за помощь.
1 авг 11, 12:13    [11052148]     Ответить | Цитировать Сообщить модератору
 Re: Группировка полей типа "VarChar"  [new]
Baddy
Member

Откуда: Харьков
Сообщений: 174
Schtass,

FAQ
1 авг 11, 12:19    [11052193]     Ответить | Цитировать Сообщить модератору
 Re: Группировка полей типа "VarChar"  [new]
Andrey Sribnyak
Member

Откуда: Киев
Сообщений: 600
Schtass,

declare @t as table (fmain char(1), fchild varchar (15))

insert into @t values ('a', 'fc_a1'),('a', 'fc_a2'),('a', 'fc_a3'),('b', 'fc_b1'),
('b', 'fc_b1'),('b', 'fc_b2')


select * from
(
select * , ROW_NUMBER () over (partition by fmain order by fchild) rnk
from @t
)p
pivot (max(fchild) for rnk in ([1],[2],[3])) pvt
1 авг 11, 12:19    [11052197]     Ответить | Цитировать Сообщить модератору
 Re: Группировка полей типа "VarChar"  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Schtass,

Есть же тема в FAQ.
Решение зависит и от версии сервера
1 авг 11, 12:27    [11052236]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить