У меня есть 2 таблицы (см. http://sqlfiddle.com/#!3/6d04f/20< /а>)
Мне трудно представить, в чем разница между следующим:
select *
from TableA as a right outer join tableB as b on b.city1id = a.id
и
select *
from TableA as a right outer join tableB as b on b.city1id = a.id
left outer join tableB parent on parent.city2id = b.city1id
Правое внешнее соединение не работает между TableA и TableB, и результатом этого является левое внешнее соединение снова с TableB.
Результат выполнения обоих запросов одинаков, поэтому я не уверен, какое влияние оказывает левое внешнее соединение в этом случае.
Концептуально я не уверен, в чем здесь разница.