Всем привет сделал 2-ва запроса, которые выдают 2-ве таблицы, но мне нужно все поместить в одну таблицу и в одну строчку по Номенклатуре. И здесь нужно работать со вложенными запросами. Да туплю, подскажите как в консоле запросов по работать со вложенными запросами,
ВЫБРАТЬ
ПродажиОбороты.Номенклатура.Ссылка КАК НоменклатураСсылка,
ПродажиОбороты.Склад.Ссылка КАК СкладСсылка,
СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот
ИЗ
РегистрНакопления.Продажи.Обороты(&ПериодНачало, &ПериодКонец, , Склад = &СсылкаСклад) КАК ПродажиОбороты
ГДЕ
ПродажиОбороты.Номенклатура = &Номенклатура
СГРУППИРОВАТЬ ПО
ПродажиОбороты.Номенклатура.Ссылка,
ПродажиОбороты.Склад.Ссылка
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
Номенклатура.НормаЕстественнойУбыли КАК НормаЕстественнойУбыли,
НормыЕстественнойУбыли.Норма КАК Норма,
НормыЕстественнойУбыли.Норма2 КАК Норма2
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НормыЕстественнойУбыли КАК НормыЕстественнойУбыли
ПО (Номенклатура.НормаЕстественнойУбыли = НормыЕстественнойУбыли.Ссылка)
ГДЕ
Номенклатура.Ссылка = &Номенклатура
ПоказатьПрикрепленные файлы:

По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
ВЫБРАТЬ
ПродажиОбороты.Номенклатура КАК Номенклатура,
ПродажиОбороты.Склад КАК Склад,
СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот
ПОМЕСТИТЬ Продажи
ИЗ
РегистрНакопления.Продажи.Обороты(&ПериодНачало, &ПериодКонец, , Склад = &СсылкаСклад и Номенклатура = &Номенклатура) КАК ПродажиОбороты
СГРУППИРОВАТЬ ПО
ПродажиОбороты.Номенклатура,
ПродажиОбороты.Склад
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
Продажи.КоличествоОборот КАК КоличествоОборот,
Продажи.Склад КАК Склад,
Продажи.Номенклатура.НормаЕстественнойУбыли КАК НормаЕстественнойУбыли,
НормыЕстественнойУбыли.Норма КАК Норма,
НормыЕстественнойУбыли.Норма2 КАК Норма2
ИЗ
Продажи КАК Продажи
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НормыЕстественнойУбыли КАК НормыЕстественнойУбыли
ПО (Продажи.Номенклатура.НормаЕстественнойУбыли = НормыЕстественнойУбыли.Ссылка)
Показать
Вариантов масса:
1. Левое соединение номенклатуры, регистра и нормы. Считается моветоном, ибо обороты - виртуальная таблица, а соединения с виртуальными таблицами - это соединения с подзапросами, которые априорно плохи (спорно, но нет настроения)
2. Просто объединение. Тогда можешь получить две одинаковые номенклатуры.
3. Агрегация подзапроса с объединением. Все будут рады, номенклатура останется одна.
4. СКД. Оно само все соединит и отагрегирует.
Остается разобраться, что есть норма и норма2. Если что-то из них количество - пункты 3 и 4, если все поля отдельные - можно 1. Я бы по первому пошел:
1. Левое соединение номенклатуры, регистра и нормы. Считается моветоном, ибо обороты - виртуальная таблица, а соединения с виртуальными таблицами - это соединения с подзапросами, которые априорно плохи (спорно, но нет настроения)
2. Просто объединение. Тогда можешь получить две одинаковые номенклатуры.
3. Агрегация подзапроса с объединением. Все будут рады, номенклатура останется одна.
4. СКД. Оно само все соединит и отагрегирует.
Остается разобраться, что есть норма и норма2. Если что-то из них количество - пункты 3 и 4, если все поля отдельные - можно 1. Я бы по первому пошел:
Выбрать
т1.Номенклатура,
т1.КоличествоОборот, // и так уже сагрегировано, нафига тут СУММА?
т1.Склад,
т2.Норма,
Т2.Норма2
ИЗ Обороты КАК т1
ЛЕВОЕ СОЕДИНЕНИЕ Нормы КАК т2
ПО (Номенклатура)
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот