Есть таблица Clients (клиенты) и Orders (заказы), которые можно связать через поле ClientId.

Операция LEFT JOIN в SQL используется для объединения двух таблиц таким образом, что в результирующем наборе будут все записи из левой (первой) таблицы, а из правой (второй) — только совпадающие по условию соединения.

Короткий ответ

Что ответить на собеседовании

Операция LEFT JOIN в SQL используется для объединения двух таблиц таким образом, что в результирующем наборе будут все записи из левой (первой) таблицы, а из правой (второй) — только совпадающие по условию соединения.

Подробный разбор

Ответ с пояснениями

Условие

Есть таблица Clients (клиенты) и Orders (заказы), которые можно связать через поле ClientId. Какие JOIN надо написать, чтобы получить следующие результаты?

a. Записи обо всех клиентах и заказах, не важно есть ли у клиентов заказы

select * from Clients left join Orders on Clients.ClientId = Orders.ClientId

d. Записи только о тех клиентах и заказах, если у клиентов есть заказы

select * from Clients inner join Orders on Clients.ClientId = Orders.ClientId

Ответ

Операция LEFT JOIN в SQL используется для объединения двух таблиц таким образом, что в результирующем наборе будут все записи из левой (первой) таблицы, а из правой (второй) — только совпадающие по условию соединения.

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

Пример:

SELECT A.id, A.name, B.order_date
FROM Customers A
LEFT JOIN Orders B ON A.id = B.customer_id;

Этот запрос вернет всех клиентов, включая тех, у кого нет заказов. Для клиентов без заказов поле order_date будет NULL.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее