Devs Hive
Повернутися до всіх запитань

Як працює RIGHT JOIN?

DatabasesJuniorMiddle
Зустрічали на інтервʼю:0 користувачів

RIGHT JOIN - це тип JOIN, який повертає всі рядки з правої таблиці, навіть якщо у лівій таблиці немає відповідних збігів. Якщо збіг у лівій таблиці існує - дані з неї додаються, а якщо немає - замість значень з лівої таблиці буде NULL.

Розберемо приклад

У нас є дві таблиці: users і orders. Наша задача - отримати всі замовлення разом з інформацією про користувача, навіть якщо користувача немає (наприклад, замовлення створено, але користувач був видалений чи не існує).

-- users
id | name
------------
1 | Alice
2 | Bob
3 | Charlie

-- orders
id | user_id | product
------------------------
1 | 1 | Laptop
2 | 1 | Mouse
3 | 2 | Keyboard
4 | 4 | Monitor

Запит буде мати наступний вигляд. Розберемо його детальніше:

SELECT
users.name,
orders.product
FROM
users -- Ліва таблиця
RIGHT JOIN
orders -- Права таблиця: повертаємо всі її рядки
ON
users.id = orders.user_id; -- Умова зв’язку таблиць

В останньому рядку, ім’я буде NULL, але замовлення Monitor буде в результаті, тому що RIGHT JOIN гарантує, що всі рядки з таблиці orders (правої таблиці) будуть включені.

name | product
-----------------------
Alice | Laptop
Alice | Mouse
Bob | Keyboard
NULL | Monitor


Зустрічав на інтервʼю?

Коментарі (0)

Увійдіть, щоб залишити коментар

Поки що немає коментарів. Будьте першим!