Я пытаюсь показать все заказы на продажу и, если они есть, накладную.У меня есть запрос, показывающий все заказы, но независимо от того, как я присоединяю его к следующей таблице, я продолжаю получать результаты только для заказов с накладными.Я хочу, чтобы NULL
присутствовал для накладных, если их нет в записи.
Я пробовал левые, правые и внутренние соединения, и все они возвращают одинаковое количество результатов, что сбивает меня с толку.Я думал, что у меня было понимание объединений до сегодняшнего дня.
Эта часть показывает, сколько существует заказов на продажу.Я хочу, чтобы все результаты этого поиска отображались в следующем запросе
select t0.docnum SalesOrder, t1.itemcode, t1.linenum rdr1line
from ordr t0 inner join rdr1 t1 on t1.docentry = t0.docentry
where t0.CANCELED = 'N';
В этой части показано, сколько заказов на продажу существует с накладной, но не включает заказы, для которых нет накладных.
select t0.docnum SalesOrder, t1.itemcode, t2.docnum DelivNoteNum, t3.baseline inv1base, t1.linenum rdr1line, t3.linenum dln1line
from ordr t0 inner join rdr1 t1 on t1.docentry = t0.docentry
right outer join odln t2 on t2.docentry = t1.trgetentry
right outer join dln1 t3 on t3.docentry = t2.docentry and t3.baseline = t1.linenum and t3.ItemCode = t1.ItemCode
where t0.CANCELED = 'N' and t2.canceled = 'N';
Ожидаемые результаты должны содержать одинаковое количество строк в каждой таблице.Фактические результаты заказываются только с накладными.