me_edu
SQL: запросы с нуляШаг 15 из 27 · 0% пройдено
Объединение таблиц (JOIN) · Объединение таблиц (JOIN)

INNER JOIN

ordersON user_id = idusersОбъединённыестроки
JOIN: строки orders сопоставляются со строками users по ключу

Данные обычно разнесены по таблицам. Например, users (пользователи) и orders (заказы), где у заказа есть user_id — ссылка на пользователя. JOIN соединяет строки двух таблиц по общему ключу:

SELECT orders.id, users.name, orders.amount FROM orders JOIN users ON users.id = orders.user_id;

Условие после ON говорит, как сопоставлять строки: заказ связывается с пользователем, у которого id равен user_id заказа.

Чтобы не писать длинные имена, таблицам дают короткие псевдонимы:

SELECT o.id, u.name, o.amount FROM orders o JOIN users u ON u.id = o.user_id;

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

Назад

Обсуждение

Войдите, чтобы участвовать в обсуждении.

Пока нет сообщений.