Рассмотрим пример из MSDN documentation:SQL Server - Регистрация Вопрос - 3 таблицы
SELECT p.Name, pr.ProductReviewID
FROM Production.Product p
LEFT OUTER JOIN Production.ProductReview pr
ON p.ProductID = pr.ProductID
В этом примере видно, что таблица на оставил является «Производство», и именно там все строки будут , а затем только те, которые соответствуют в ProductReview.
Но теперь рассмотрим следующий гипотетический запрос с 3 таблицы A, B, C
select * from A
inner Join B on A.field1 = B.field1
left outer join C on C.field2 = b.Field2
Какая левая таблица в запросе (от которого будут возвращены все записи, независимо от матча к C) ? Это A или B? Или это результат присоединения от A & B?
Мое замешательство возникает из следующего MSDN documentation, в котором говорится, что «внешние соединения могут быть указаны только в предложении FROM», что означает, что левая таблица в моем гипотетическом запросе равна A, но тогда у меня нет предложения ON, определяет условие соединения - в этом случае мой гипотетический запрос является плохим?