Здравствуйте, есть 2 запроса, 1ый получает меню, в нем есть ограничение на кол-во блюд, 2ой - блюда, которые уже были заказаны сегодня. Мне нужно сделать так,чтобы 1ый запрос возвращал "ВНаличии" минус "Количество заказанных". Незнаю как их объединить, возможно через внутренний запрос?
---
Выбрать ЗапросИтог.Блюдо, сумма(ЗапросИтог.Колво)
Из (
выбрать ЗапросВсего.Блюдо, ЗапросВсего.Колво
из ЗапросВсего
Объединить все
выбрать ЗапросЗаказано.Блюдо, - ЗапросЗаказано.Колво
из ЗапросЗаказано
) ЗапросИтог
Сгруппировать ПО ЗапросИтог.Блюдо
---
Подскажите, пожалуйста
---
выбрать Запрос1.*
из Запрос1
левое соединение Запрос2 по Запрос1.Поле=Запрос2.Поле
где Запрос2.Поле есть NULL
---
А, нет. Неправильно понял.
Можно через объединение (ОБЪЕДИНИТЬ) с агрегированием. Мысль понятна? Или подробнее написать?
---
Опыта с этим не было, пользовался только обычными соединениями. Подробнее если можно
---
Вот кусок моего первого запроса, откуда нужно вычитать данные из второго.

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | 1 КАК ПорядокСледования,
    | "Завтрак" КАК Меню,
    | КХВМенюЗавтрак.Номенклатура,
    | ЦеныНоменклатурыСрезПоследних.Цена,
    | "" КАК Группа,
    | "" КАК КодГруппы,
    | "" КАК ВНаличии
    |ИЗ
    | Документ.КХВМеню.Завтрак КАК КХВМенюЗавтрак
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = ЗНАЧЕНИЕ(Справочник.ТипыЦенНоменклатуры.ОсновнаяЦенаПродажи)) КАК ЦеныНоменклатурыСрезПоследних
    | ПО КХВМенюЗавтрак.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
    |ГДЕ
    | НАЧАЛОПЕРИОДА(КХВМенюЗавтрак.Ссылка.Дата, ДЕНЬ) = НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ)
    | И КХВМенюЗавтрак.Ссылка.Проведен
    | И КХВМенюЗавтрак.Взаказ"+НомерМеню+
    "
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | 2,
    | "Обед",
    | КХВМенюОбед.Номенклатура,
    | ЦеныНоменклатурыСрезПоследних.Цена * &Коэффициент,
    | КХВМенюОбед.Номенклатура.Родитель,
    | КХВМенюОбед.Номенклатура.Родитель.Код,
    | КХВМенюОбед.ВЗаказН"+НомерМеню+" КАК ВНаличии
    |ИЗ
    | Документ.КХВМеню.Обед КАК КХВМенюОбед
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = ЗНАЧЕНИЕ(Справочник.ТипыЦенНоменклатуры.ОсновнаяЦенаПродажи)) КАК ЦеныНоменклатурыСрезПоследних
    | ПО КХВМенюОбед.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
    |ГДЕ
    | НАЧАЛОПЕРИОДА(КХВМенюОбед.Ссылка.Дата, ДЕНЬ) = НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ)
    | И КХВМенюОбед.Ссылка.Проведен
    | И КХВМенюОбед.Взаказ"+НомерМеню+"
```

Второй:

```1c
    Запрос = Новый Запрос;
    Запрос.Текст ="ВЫБРАТЬ
    | КУБЗаявкиОбороты.Склад,
    | КУБЗаявкиОбороты.Площадка,
    | КУБЗаявкиОбороты.Номенклатура КАК Блюдо,
    | СУММА(КУБЗаявкиОбороты.КоличествоОборот) КАК Количество
    |ИЗ
    | РегистрНакопления.КУБЗаявки.Обороты(
    | &ДатаНач,
    | &ДатаКон,
    | Запись,
    | Площадка = &НомерМеню
    | И Склад = &Склад) КАК КУБЗаявкиОбороты
    |
    |СГРУППИРОВАТЬ ПО
    | КУБЗаявкиОбороты.Склад,
    | КУБЗаявкиОбороты.Площадка,
    | КУБЗаявкиОбороты.Номенклатура";

    Запрос.УстановитьПараметр("Склад", Справочники.Склады.НайтиПоНаименованию("Столовая ПЛТН"));
    Запрос.УстановитьПараметр("НомерМеню", Номер);
    Запрос.УстановитьПараметр("ДатаНач", НачалоДня(ДатаМеню));
    Запрос.УстановитьПараметр("ДатаКон", КонецДня(ДатаМеню));
```
---
Выбрать ЗапросИтог.Блюдо, сумма(ЗапросИтог.Колво)
Из (
выбрать ЗапросВсего.Блюдо, ЗапросВсего.Колво
из ЗапросВсего
Объединить все
выбрать ЗапросЗаказано.Блюдо, - ЗапросЗаказано.Колво
из ЗапросЗаказано
) ЗапросИтог
Сгруппировать ПО ЗапросИтог.Блюдо
---
Понял, спасибо
---
Можно и через левое или полное соединение написать. Но как по мне, так через объединение нагляднее.