Имя: Пароль:
1C
 
Как правильно составить запрос?
0 slabak
 
06.10.15
16:57
Здравствуйте.

Задача вывести первые три строки заказа клиента в таком формате (хочу получить такой результат в консоли запросов)?

Нужен такой результат:

Колонки таблицы - Номенклатура1, Номенклатура2, Номенклатура3
Строка таблицы - Товар1 - Товар2 - Товар3

Подскажите, пожалуйста, как правильно составить запрос?

ВЫБРАТЬ ПЕРВЫЕ 3
    ЗаказКлиентаТовары.Номенклатура
ПОМЕСТИТЬ ЗаказКлиента
ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
ГДЕ
    ЗаказКлиентаТовары.Ссылка = &Заказ

В этом случае мы получаем первые три строки заказа столбцом, а как этот столбец перевести в строку?

Спасибо!
1 Волшебник
 
модератор
06.10.15
16:58
циклом
2 Горогуля
 
06.10.15
16:59
это несколько любые три, если что
3 slabak
 
06.10.15
17:01
(1) А как это сделать в запросе?
4 Горогуля
 
06.10.15
17:01
(3) никак
5 WebberNSK
 
06.10.15
17:02
(3) соединение/объединение 3х таблиц с отбором по номеру строки
6 WebberNSK
 
06.10.15
17:03
(3) ps если делаешь отчет на СКД, то там это решается
7 GANR
 
06.10.15
17:12
(1) выбор когда ...
8 slabak
 
06.10.15
17:13
Я делаю не на СКД, а в простом запросе. Задачу существенно упростил для понимания, что необходимо.
Фактический запрос гораздо мудренее и вообще не с табличной частью.
(7) Можно поподробнее?
9 slabak
 
06.10.15
17:15
Результат запроса:
Товар1
Товар2
Товар3

А нужно транспонировать и получить:
Товар1 Товар2 Товар3

С наименованиями колонок Номенклатура1, Номенклатура2, Номенклатура3.
10 Timon1405
 
06.10.15
17:15
гуглить транспонирование в запросе уже предлагали?
11 Ненавижу 1С
 
гуру
06.10.15
17:17
ну если точно ТРИ, то

ВЫБРАТЬ

МАКСИМУМ(ВЫБОР КОГДА НомерСтроки=1 ТОГДА Номенклатура КОНЕЦ) КАК Номенклатура1,
МАКСИМУМ(ВЫБОР КОГДА НомерСтроки=2 ТОГДА Номенклатура КОНЕЦ) КАК Номенклатура2,
МАКСИМУМ(ВЫБОР КОГДА НомерСтроки=3 ТОГДА Номенклатура КОНЕЦ) КАК Номенклатура3

ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
ГДЕ
    ЗаказКлиентаТовары.Ссылка = &Заказ
12 slabak
 
06.10.15
17:20
(11) Спасибо!
13 Горогуля
 
06.10.15
17:30
>В этом случае мы получаем первые три строки заказа столбцом
да не за что