В чем различия JOIN и LEFT JOIN
Python
Middle
Evapps
В чем различия 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` — сохраняет все данные из левой таблицы, дополняя их при наличии совпадений.