У меня общий вопрос о том, как сервер sql оценивает объединения. Запрос:
SELECT *
FROM TableA
INNER JOIN TableB ON TableB.id = TableA.id
LEFT JOIN TABLEC ON TABLEC.id = TABLEB.id
В1: На каких таблицах основано левое соединение? Я знаю, что это будет основано на TABLEC, но что является другим? Это результат первого внутреннего соединения или TABLEB, указанный в условии левого соединения?
Q2: "LEFT JOIN TABLEC ON TABLEC.id = TABLEB.id" эквивалентно "LEFT JOIN TABLEC ON TABLEB.id = TABLEC.id"
Q3: эквивалентен ли следующий запрос? (с заменой TABLEB.id на TABLEA.id?)
SELECT *
FROM TableA
INNER JOIN TableB ON TableB.id = TableA.id
LEFT JOIN TABLEC ON TABLEC.id = TABLEA.id
Спасибо!