Старнная работа ПОЛНОГО СОЕДИНЕНИЯ в запросе.

1. sv_baranov 6 28.10.21 11:25 Сейчас в теме
Уважаемы форумчане. Помогите решить вопрос.
Платформа: 1С:Предприятие 8.3 (8.3.18.1334)
Конфигурация: Бухгалтерия предприятия, редакция 3.0 (3.0.102.11)
Решил написать простенький отчет по документу Путевой лист (не кидаться в меня сразу тухлыми помидорами, знаю что плохо делать запрос к документам, но тут надо было).
Делаю запрос к двум ТЧ в этом документе и связываю ПОЛНЫМ СОЕДИНЕНИЕМ.

ВЫБРАТЬ
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата) КАК Дата,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка) КАК ПутевойЛист,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство) КАК ТранспортноеСредство,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо) КАК Сотрудник,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода) КАК НормаРасхода,
	СУММА(ПутевойЛистТопливо.Количество) КАК Количество,
	СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
	СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ИЗ
	Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
		ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
		ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
ГДЕ
	ПутевойЛистМаршрут.Ссылка.Проведен
	И ПутевойЛистТопливо.Ссылка.Проведен
	И ПутевойЛистМаршрут.Ссылка.Дата >= &ДатаНач
	И ПутевойЛистМаршрут.Ссылка.Дата <= &ДатаКон
	И ПутевойЛистТопливо.Ссылка.Дата >= &ДатаНач
	И ПутевойЛистТопливо.Ссылка.Дата <= &ДатаКон

СГРУППИРОВАТЬ ПО
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода)

УПОРЯДОЧИТЬ ПО
	Дата
Показать


Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо. Если же ТЧ топливо не заполнено, а ТЧ Маршрут имеет значения - такой документ в выборку не попадает.


Переписал запрос через временные таблицы. Получилось вот так:

ВЫБРАТЬ
	ПутевойЛистТопливо.Ссылка.Дата КАК Дата,
	ПутевойЛистТопливо.Ссылка КАК Ссылка,
	ПутевойЛистТопливо.Ссылка.ТранспортноеСредство КАК ТранспортноеСредство,
	ПутевойЛистТопливо.Ссылка.ФизЛицо КАК ФизЛицо,
	ПутевойЛистТопливо.Ссылка.НормаРасхода КАК НормаРасхода,
	СУММА(ПутевойЛистТопливо.Количество) КАК Количество
ПОМЕСТИТЬ вт_Топливо
ИЗ
	Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
ГДЕ
	ПутевойЛистТопливо.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон
	И ПутевойЛистТопливо.Ссылка.ФизЛицо = &ФизЛицо
	И ПутевойЛистТопливо.Ссылка.Проведен

СГРУППИРОВАТЬ ПО
	ПутевойЛистТопливо.Ссылка.Дата,
	ПутевойЛистТопливо.Ссылка,
	ПутевойЛистТопливо.Ссылка.ТранспортноеСредство,
	ПутевойЛистТопливо.Ссылка.ФизЛицо,
	ПутевойЛистТопливо.Ссылка.НормаРасхода
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ПутевойЛистМаршрут.Ссылка.Дата КАК Дата,
	ПутевойЛистМаршрут.Ссылка КАК Ссылка,
	ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство КАК ТранспортноеСредство,
	ПутевойЛистМаршрут.Ссылка.ФизЛицо КАК ФизЛицо,
	ПутевойЛистМаршрут.Ссылка.НормаРасхода КАК НормаРасхода,
	СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
	СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ПОМЕСТИТЬ вт_Маршрут
ИЗ
	Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
ГДЕ
	ПутевойЛистМаршрут.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон
	И ПутевойЛистМаршрут.Ссылка.ФизЛицо = &ФизЛицо
	И ПутевойЛистМаршрут.Ссылка.Проведен

СГРУППИРОВАТЬ ПО
	ПутевойЛистМаршрут.Ссылка.Дата,
	ПутевойЛистМаршрут.Ссылка,
	ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство,
	ПутевойЛистМаршрут.Ссылка.ФизЛицо,
	ПутевойЛистМаршрут.Ссылка.НормаРасхода
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ЕСТЬNULL(вт_Маршрут.Дата, вт_Топливо.Дата) КАК Дата,
	ЕСТЬNULL(вт_Маршрут.Ссылка, вт_Топливо.Ссылка) КАК Ссылка,
	ЕСТЬNULL(вт_Маршрут.ТранспортноеСредство, вт_Топливо.ТранспортноеСредство) КАК ТранспортноеСредство,
	ЕСТЬNULL(вт_Маршрут.ФизЛицо, вт_Топливо.ФизЛицо) КАК ФизЛицо,
	ЕСТЬNULL(вт_Маршрут.НормаРасхода, вт_Топливо.НормаРасхода) КАК НормаРасхода,
	вт_Маршрут.Расстояние КАК Расстояние,
	вт_Маршрут.Расход КАК Расход,
	вт_Топливо.Количество КАК Количество
ИЗ
	вт_Топливо КАК вт_Топливо
		ПОЛНОЕ СОЕДИНЕНИЕ вт_Маршрут КАК вт_Маршрут
		ПО (вт_Топливо.Ссылка = вт_Маршрут.Ссылка)

УПОРЯДОЧИТЬ ПО
	Дата
Показать


Второй запрос отрабатывает как надо.
Кстати в первом запросе не использовал для дат МЕЖДУ, т.к. тоже не отрабатывало, а надо было быстро не стал разбираться.

В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?
Найденные решения
13. -AI- 28.10.21 11:45 Сейчас в теме
(1) из-за отбора в поле где, полное соединение превращается во внутреннее
и что бы этого не происходило, переделайте условия в такой вид:
ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
// и т.д.

PS а т.к. у вас есть неявное соединение с справочником (дважды!), то лучше сделайте его явным (единожды!):
ИЗ
    Документ.ПутевойЛист как спр
        левое соединенние
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПО ПутевойЛистМаршрут.Ссылка = спр.Ссылка
            левое СОЕДИНЕНИЕ
    Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистТопливо.Ссылка = спр.Ссылка
ГДЕ
    спр.Проведен
    И спр.Дата >= &ДатаНач
    И спр.Дата <= &ДатаКон
    и (ПутевойЛистМаршрут.Ссылка Есть НЕ NULL или ПутевойЛистТопливо.Ссылка Есть НЕ NULL)
Показать
PlatonStepan; +1 Ответить
2. Sashares 34 28.10.21 11:31 Сейчас в теме
(1)
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?

Потому что дальше в ГДЕ у вас отбор:
ПутевойЛистМаршрут.Ссылка.Проведен
    И ПутевойЛистТопливо.Ссылка.Проведен...

Если не будет хотя бы одной строки в обеих таблицах, данные не попадут.
9. spacecraft 28.10.21 11:38 Сейчас в теме
(1)
В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?

Ответ на оба вопроса простой:
Полное соединение отрабатывает, но после соединения идет секция ГДЕ, в которой отсекаются не нужные записи.
ГДЕ
ПутевойЛистМаршрут.Ссылка.Проведен
И ПутевойЛистТопливо.Ссылка.Проведен
И ПутевойЛистМаршрут.Ссылка.Дата >= &ДатаНач
И ПутевойЛистМаршрут.Ссылка.Дата <= &ДатаКон
И ПутевойЛистТопливо.Ссылка.Дата >= &ДатаНач
И ПутевойЛистТопливо.Ссылка.Дата <= &ДатаКон

Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо.

Если данных в какой-то таблице нет, то ИмяТаблицы.Ссылка будет null. Соответственно по null все условия дадут Ложь и будут исключены из выборки.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 34 28.10.21 11:31 Сейчас в теме
(1)
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?

Потому что дальше в ГДЕ у вас отбор:
ПутевойЛистМаршрут.Ссылка.Проведен
    И ПутевойЛистТопливо.Ссылка.Проведен...

Если не будет хотя бы одной строки в обеих таблицах, данные не попадут.
5. Sashares 34 28.10.21 11:33 Сейчас в теме
(1)
2. Почему в первом запросе не работает оператор МЕЖДУ?

В чем выражается, что он не работает?
10. sv_baranov 6 28.10.21 11:42 Сейчас в теме
(5) Очень просто - не отсекает ненужных дат документа. Вываливает либо все доки, либо вообще не выдает ни одного.
16. Sashares 34 28.10.21 11:53 Сейчас в теме
(10)Приложите текст запроса, приложите результат, тогда можно будет сказать, что не верно.
8. nomad_irk 72 28.10.21 11:35 Сейчас в теме
(1)начнем с того, зачем вообще использовать полное соединение?
11. Sashares 34 28.10.21 11:42 Сейчас в теме
(8)Поддержу. Сначала взять данные шапки, и к ним присоединить данные ТЧ.
12. sv_baranov 6 28.10.21 11:43 Сейчас в теме
(8) Этот запрос для СКД. Нужны поля из обеих ТЧ. Потому и соединяю их. Если выбрать в качестве источника документ (а не две ТЧ), то он ссыпает все в одно поле.
14. nomad_irk 72 28.10.21 11:47 Сейчас в теме
(12)что значит "ссыпает все в одно поле"?
9. spacecraft 28.10.21 11:38 Сейчас в теме
(1)
В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?

Ответ на оба вопроса простой:
Полное соединение отрабатывает, но после соединения идет секция ГДЕ, в которой отсекаются не нужные записи.
ГДЕ
ПутевойЛистМаршрут.Ссылка.Проведен
И ПутевойЛистТопливо.Ссылка.Проведен
И ПутевойЛистМаршрут.Ссылка.Дата >= &ДатаНач
И ПутевойЛистМаршрут.Ссылка.Дата <= &ДатаКон
И ПутевойЛистТопливо.Ссылка.Дата >= &ДатаНач
И ПутевойЛистТопливо.Ссылка.Дата <= &ДатаКон

Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо.

Если данных в какой-то таблице нет, то ИмяТаблицы.Ссылка будет null. Соответственно по null все условия дадут Ложь и будут исключены из выборки.
13. -AI- 28.10.21 11:45 Сейчас в теме
(1) из-за отбора в поле где, полное соединение превращается во внутреннее
и что бы этого не происходило, переделайте условия в такой вид:
ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
// и т.д.

PS а т.к. у вас есть неявное соединение с справочником (дважды!), то лучше сделайте его явным (единожды!):
ИЗ
    Документ.ПутевойЛист как спр
        левое соединенние
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПО ПутевойЛистМаршрут.Ссылка = спр.Ссылка
            левое СОЕДИНЕНИЕ
    Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистТопливо.Ссылка = спр.Ссылка
ГДЕ
    спр.Проведен
    И спр.Дата >= &ДатаНач
    И спр.Дата <= &ДатаКон
    и (ПутевойЛистМаршрут.Ссылка Есть НЕ NULL или ПутевойЛистТопливо.Ссылка Есть НЕ NULL)
Показать
PlatonStepan; +1 Ответить
17. sv_baranov 6 28.10.21 12:03 Сейчас в теме
(13) Исправил. Вдруг кому надо. Результирующий запрос, который отрабатывает как надо:
ВЫБРАТЬ
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата) КАК Дата,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка) КАК ПутевойЛист,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство) КАК ТранспортноеСредство,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо) КАК Сотрудник,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода) КАК НормаРасхода,
	СУММА(ПутевойЛистТопливо.Количество) КАК Количество,
	СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
	СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ИЗ
	Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
		ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
		ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
ГДЕ
	ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен, Истина)
	И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
	И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаКон) <= &ДатаКон
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаКон) <= &ДатаКон

СГРУППИРОВАТЬ ПО
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода)

УПОРЯДОЧИТЬ ПО
	Дата
Показать
18. -AI- 28.10.21 12:59 Сейчас в теме
(17) и всё же...
слишком много ЕстьNULL у вас, я бы оставил только один:
ВЫБРАТЬ
    ПутевойЛист.Дата,
    ПутевойЛист.Ссылка,
    ПутевойЛист.ТранспортноеСредство,
    ПутевойЛист.ФизЛицо КАК Сотрудник,
    ПутевойЛист.ТранспортноеСредство.НормаРасхода КАК НормаРасхода,
    СУММА(ПутевойЛистТопливо.Количество) КАК Количество,
    СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
    СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ИЗ
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
    левое СОЕДИНЕНИЕ Документ.ПутевойЛист КАК ПутевойЛист
        ПО ЕстьNULL(ПутевойЛистМаршрут.Ссылка, ПутевойЛистТопливо.Ссылка)=ПутевойЛист.Ссылка
ГДЕ
    ПутевойЛист.Проведен
    И ПутевойЛист.Дата >= &ДатаНач
    И ПутевойЛист.Дата <= &ДатаКон

СГРУППИРОВАТЬ ПО
    ПутевойЛист.Дата,
    ПутевойЛист.Ссылка,
    ПутевойЛист.ТранспортноеСредство,
    ПутевойЛист.ФизЛицо

УПОРЯДОЧИТЬ ПО
    ПутевойЛист.Дата
Показать
19. Sashares 34 28.10.21 13:33 Сейчас в теме
(18)Почему у вас такое?
Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
    левое СОЕДИНЕНИЕ Документ.ПутевойЛист КАК ПутевойЛист
        ПО ЕстьNULL(ПутевойЛистМаршрут.Ссылка, ПутевойЛистТопливо.Ссылка)=ПутевойЛист.Ссылка


Почему не так?

Документ.ПутевойЛист КАК ПутевойЛист
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
ПО ПутевойЛист.Ссылка = ПутевойЛистМаршрут.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
ПО ПутевойЛист.Ссылка = ПутевойЛистТопливо.Ссылка
20. -AI- 28.10.21 13:42 Сейчас в теме
(19) потому что такой вариант я предлагал выше...

но он "не зашел" автору топика....
21. Sashares 34 28.10.21 13:44 Сейчас в теме
(20)ТС не ищет легких путей))
22. sv_baranov 6 28.10.21 14:02 Сейчас в теме
23. sv_baranov 6 28.10.21 14:03 Сейчас в теме
(19) А вот этого я не знаю. Для меня тяжелочитаемы двойные соединения...
24. -AI- 28.10.21 14:16 Сейчас в теме
(23)
Для меня тяжелочитаемы двойные соединения...

двойное соединение = одинарное соединение, где первый запрос "вложенный" (ну или, в вашем случае, временная таблица)

перефразирую:

если у вас в голове есть результат первого соединения, то вы всегда можете присоединить к нему ещё одно и т.д.
3. user1461477 28.10.21 11:31 Сейчас в теме
это массовый гипноз - что подокументарные отчеты - это плохо
пусть сначала начнут писать что-то вразумительно с регистрами, потом будут щОки надувать, правильно-неправильно
4. user1461477 28.10.21 11:32 Сейчас в теме
(3) кто видел в реальных базах РАУЗ, тот над документаркой не смеется
6. gybson 28.10.21 11:34 Сейчас в теме
В условиях уберите ТЧ, если они требуются, то перенесите условия в соединение
7. user1461477 28.10.21 11:35 Сейчас в теме
а так, да
запросец весьма смишон
15. user1461477 28.10.21 11:52 Сейчас в теме
(7)
Выбрать  Ссылка, Дата, ТранспортноеСредство, ФизЛицо КАК Сотрудник, 
ТранспортноеСредство.НормаРасхода КАК НормаРасхода
поместить Доки из Документ.ПутевойЛист  ГДЕ
    Проведен
    И (Дата Между &ДатаНач и &ДатаКон)
    ;
 Выбрать СУММА(Количество) КАК Количество, Ссылка поместить топливо
 из Документ.ПутевойЛист.Топливо 
 где Ссылка.Проведен
    И (Ссылка.Дата Между &ДатаНач и &ДатаКон)   
СГРУППИРОВАТЬ ПО
    Ссылка

    ;
 Выбрать СУММА(Расстояние) КАК Расстояние, СУММА(Расход) КАК Расход,
Ссылка поместить маршрут
 из Документ.ПутевойЛист.ПутевойЛистМаршрут 
 где Ссылка.Проведен
    И (Ссылка.Дата Между &ДатаНач и &ДатаКон)   
СГРУППИРОВАТЬ ПО
    Ссылка

;
выбрать * из Доки левое соединение Топливо КАК топливо по Доки.Ссылка = Топливо.Ссылка
левое соединение маршрут как Маршрут по Доки.Ссылка = маршрут.Ссылка
Показать


как-то так, извините за неровный почерк
в выходном запросе пропустить астерикс через конструктор и убрать два лишних поля ссылок
25. gybson 29.10.21 09:27 Сейчас в теме
Я бы еще посмотрел в сторону объединения, так как фактически это оно и есть
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот