В чем различия JOIN и LEFT JOIN

Python Middle Без компании
В чем различия JOIN и LEFT JOIN
Ответы
`JOIN` (или `INNER JOIN`) возвращает только те строки, где есть совпадения в обеих таблицах. Если совпадений нет - строка не попадет в результат. `LEFT JOIN` (или `LEFT OUTER JOIN`) возвращает все строки из левой таблицы, даже если нет совпадений в правой. В таком случае поля из правой таблицы будут `NULL`. **Пример:** ``` -- INNER JOIN (только пользователи с заказами) SELECT users.name, orders.amount FROM users JOIN orders ON users.id = orders.user_id; -- LEFT JOIN (все пользователи, даже без заказов) SELECT users.name, orders.amount FROM users LEFT JOIN orders ON users.id = orders.user_id; ``` **Ключевое отличие:** - `JOIN` — фильтрует данные, оставляя только совпадения. - `LEFT JOIN` — сохраняет все данные из левой таблицы, дополняя их при наличии совпадений.