Встречается на собеседованиях • сегодня

В чем разница между LEFT, RIGHT и INNER JOIN

LEFT JOIN возвращает все строки из левой таблицы и соответствующие строки из правой. Если соответствий нет, справа будут NULL.

RIGHT JOIN аналогичен, но возвращает все строки из правой таблицы и соответствия слева.

INNER JOIN возвращает только строки, где есть соответствие в обеих таблицах.

Пример:

sql
-- LEFT JOIN: все пользователи, даже без заказов
SELECT users.name, orders.amount 
FROM users 
LEFT JOIN orders ON users.id = orders.user_id;

-- RIGHT JOIN: все заказы, даже без пользователей
SELECT users.name, orders.amount 
FROM users 
RIGHT JOIN orders ON users.id = orders.user_id;

-- INNER JOIN: только пользователи с заказами
SELECT users.name, orders.amount 
FROM users 
INNER JOIN orders ON users.id = orders.user_id;

LEFT JOIN используется чаще, RIGHT JOIN реже (обычно можно переписать как LEFT). INNER JOIN — для строгих соответствий.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы