У меня есть три таблицы: R, S и P.
Таблица R Соединения с S через внешний ключ; в S должна быть хотя бы одна запись, поэтому я могу ПРИСОЕДИНЯЙСЯ:
SELECT
*
FROM
R
JOIN S ON (S.id = R.fks)
Если в S нет записи, тогда я не получаю никаких строк, это прекрасно.
Затем таблица S соединяется с P, где записи P могут или не могут присутствовать и соединяться с S.
Итак, я делаю
SELECT
*
FROM
R
JOIN S ON (S.id = R.fks)
LEFT JOIN P ON (P.id = S.fkp)
Что, если бы я хотел, чтобы второй JOIN был привязан к S не к R, например, если бы я мог использовать круглые скобки:
SELECT
*
FROM
R
JOIN (S ON (S.id = R.fks) JOIN P ON (P.id = S.fkp))
Или это уже естественное поведение декартова произведения между R, S и P?