Sobes.tech
Назад к вопросам
Middle
8

Расскажи, какие виды JOIN бывают.

Компании, где спрашивали
Perfomance lab

Ответ от нейросети

sobes.tech AI

В SQL существуют несколько основных видов JOIN, которые позволяют объединять данные из двух и более таблиц по определённому условию:

  • INNER JOIN — возвращает только те строки, у которых есть совпадения в обеих таблицах.
  • LEFT JOIN (LEFT OUTER JOIN) — возвращает все строки из левой таблицы и совпадающие строки из правой. Если совпадений нет, в столбцах правой таблицы будут NULL.
  • RIGHT JOIN (RIGHT OUTER JOIN) — наоборот, возвращает все строки из правой таблицы и совпадающие из левой.
  • FULL JOIN (FULL OUTER JOIN) — возвращает все строки из обеих таблиц, заполняя NULL там, где нет совпадений.
  • CROSS JOIN — декартово произведение двух таблиц, возвращает все возможные комбинации строк.

Пример INNER JOIN:

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

Этот запрос вернёт имена пользователей и их заказы, только если у пользователя есть заказы.