Sobes.tech
Back to questions
Junior — Middle
67

Можешь ли ты перечислить основные виды соединений таблиц в SQL и объяснить их использование?

Companies where asked
Почтатех

Answer from AI

sobes.tech AI

Основные виды соединений (JOIN) в SQL:

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

Пример использования INNER JOIN:

SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;

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