У меня есть следующий код:
FROM CTE_Order cte
INNER JOIN tblOrders o
ON cte.OrderId = o.Id
INNER JOIN tblOrderUnits ou
ON o.id = ou.OrderId
INNER JOIN tblOrderServiceUnits osu
ON ou.VMSUnitID = osu.UnitId
Когда я присоединяюсь к ou, я получаю 2 из того же идентификатора единицы. Это делает Внутреннее объединение tblOrderServiceUnits, возвращают 4 строки с 2 являющийся дубликатами. Мне нужен он, чтобы только возвратить эти 2 строки отличающегося. Как я использую отличное для Внутреннего объединения только отличный ou.id?
Извините за плохое объяснение, но в основном я - jsut, пытающийся видеть, как ВНУТРЕННЕЕ ОБЪЕДИНЕНИЕ с отличным подзапросом работало бы, Если кто-то мог бы дать мне, пример которого я мог изобразить его из там.
INNER JOIN (SELECT DISTINCT * FROM X) Alias
ON Alias.ID = Primary.ID
Для вашего примера:
INNER JOIN (SELECT DISTINCT VMSUnitID, OrderId FROM tblOrderUnits) ou
ON o.id = ou.OrderId