INNER JOIN

INNER JOIN – это один из самых часто используемых типов соединений в SQL. Он позволяет объединить строки из двух таблиц на основе заданного условия. Рассмотрим его подробнее:

Основные характеристики

  1. Совпадение строк: INNER JOIN возвращает только те строки, для которых существует совпадение в обеих таблицах по указанному условию соединения. Если в одной из таблиц нет соответствующей строки для соединения, то эта строка не будет включена в результирующий набор.

  2. Условие соединения: Обычно INNER JOIN требует указания условия соединения, которое указывает, как строки из одной таблицы связаны со строками другой таблицы. Обычно это делается через совпадение значений столбцов.

Синтаксис

SELECT columns
FROM table1
INNER JOIN table2
ON table1.column = table2.column;
  • table1 и table2: Имена таблиц, которые вы хотите соединить.

  • table1.column и table2.column: Столбцы, по которым происходит соединение. Эти столбцы должны содержать совпадающие значения.

Пример

Предположим, у нас есть две таблицы: employees и departments.

Таблица employees

employee_idnamedepartment_id

1

Alice

10

2

Bob

20

3

Charlie

10

Таблица departments

department_iddepartment_name

10

HR

20

IT

30

Marketing

Мы хотим получить список сотрудников и их соответствующие названия отделов. Для этого можно использовать INNER JOIN:

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

Результат запроса

namedepartment_name

Alice

HR

Bob

IT

Charlie

HR

Объяснение

  • Мы соединяем таблицу employees с таблицей departments по столбцу department_id.

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

Особенности

  • Если условие соединения не выполнено, строка не попадет в результат.

  • Можно использовать несколько условий соединения, а также соединять более двух таблиц.

INNER JOIN полезен для извлечения данных, которые имеют смысл только при объединении информации из разных источников.

Last updated