Сделать запрос деталей не существует на tradecode вернуться таблица результат null, почему ?
проблема
оператор ниже возвращает значения без каких - либо проблем
select top 1000000 p.PartNumber,m.Supplier,m.TradeCodeType,m.status from #PartsMissed m inner join parts.Nop_Part p on p.CompanyID=m.SupplierId where (p.PartID not in (SELECT PartID FROM parts.TradeCodes t where t.CodeTypeID=m.TradeCode))
Я пытаюсь сделать выше выступление левое соединение прямыми, но это не возвращает никаких
ценности
он возвращает null почему
create table #PartsMissed ( Supplier nvarchar(200), SupplierId int, TradeCodeType nvarchar(100), TradeCode int, status NVARCHAR(100) NULL ) insert into #PartsMissed ( SupplierId, TradeCode ) VALUES (1000234,849774)
Что я уже пробовал:
оператор ниже возвращает нулевой результат почему
хотя первое заявление через ( не ) работает идеально
SELECT p.PartID, p.CompanyID FROM parts.Nop_Part p LEFT OUTER JOIN ( SELECT mp.PartID, mp.CompanyID,d.TradeCode FROM parts.Nop_Part mp left join #PartsMissed d on mp.CompanyID=d.SupplierId left JOIN parts.TradeCodes AS t ON t.CodeTypeID = d.TradeCode ) x ON p.PartID=x.PartID WHERE x.PartID is NULL