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

Откуда:
Сообщений: 12
Добрый вечер.
Есть следующая схема.

create table A
(
A_ID int,
A_Name varchar(50),
A_Value varchar(50),
)

insert A values(1, 'name1', 'value1')
insert A values(2, 'name2', 'value2')
insert A values(3, 'name3', 'value3')
insert A values(4, 'name4', 'value4')

create table B
(
B_SDoc int,
B_Value int
)

insert B values(1, 20)
insert B values(1, 10)
insert B values(1, 15)
insert B values(2, 100)
insert B values(2, 200)
insert B values(3, 4000) 'name1', 'value1'

Требуется при помощи следующего соединения :
select * -- * - условно, возможно неопределенное количество полей, т.е. по A_ID не сгруппируешь
from A
left outer join B on A_ID = B_SDoc

получить строку из значений B_Value например через запятую
т.е. результат такой:
1, 'name1', 'value1', '20,10,15'
2, 'name2', 'value2', '100,200'
3, 'name3', 'value3', '4000'
4, 'name4', 'value4', null

Для одного значения A_ID (с условием where то бишь) я знаю что делать (объявить переменную строковую и туда все записать). А вот как это сделать для всего набора?

Подскажите плиз.

Сообщение было отредактировано: 27 окт 11, 00:04
26 окт 11, 23:32    [11506143]     Ответить | Цитировать Сообщить модератору
 Re: Помогите плиз с сбором данных в строку в запросе  [new]
iljy
Member

Откуда:
Сообщений: 8711
Воротник,

FAQ - сложение символьных полей в запросе.
27 окт 11, 00:31    [11506226]     Ответить | Цитировать Сообщить модератору
 Re: Помогите плиз с сбором данных в строку в запросе  [new]
Воротник
Member

Откуда:
Сообщений: 12
iljy, спасибо
27 окт 11, 16:39    [11510663]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить