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

Inner Join — это оператор SQL, который используется для объединения строк из двух таблиц в результатах запроса, на основе совпадения значений в указанных столбцах обеих таблиц. Таким образом, INNER JOIN возвращает только те строки, которые имеют соответствующие значения в указанных столбцах обеих таблиц, исключая строки, которые не имеют совпадающих значений.

Принцип объединения данных при использовании SQL оператора RIGHT JOIN
Принцип объединения данных при использовании SQL оператора RIGHT JOIN

Синтаксис SQL Inner Join:

SELECT [столбцы] 
FROM [таблица 1] 
INNER JOIN [таблица 2] ON [условие соединения];

Примеры использования

Объединение таблиц по одному столбцу

Таблица 1: customers

customer_id name
1 John Doe
2 Jane Doe

Таблица 2: orders

order_id customer_id order_date
1 1 2022-01-01
2 1 2022-02-01
3 2 2022-03-01
SELECT * 
FROM customers 
INNER JOIN orders ON customers.customer_id = orders.customer_id;

Результат:

customer_id name order_id order_date
1 John Doe 1 2022-01-01
1 John Doe 2 2022-02-01
2 Jane Doe 3 2022-03-01

В этом примере мы объединяем две таблицы — customers и orders — по столбцу customer_id. В результате объединения мы получим только те строки, в которых значение customer_id совпадает в обеих таблицах.

Объединение таблиц по нескольким столбцам

Таблица 1: employees

employee_id name office_id
1 John Doe 1
2 Jane Doe 2
3 Bob Smith 1

Таблица 2: orders

order_id employee_id office_id order_date
1 1 1 2022-01-01
2 1 1 2022-02-01
3 2 2 2022-03-01
SELECT * 
FROM employees 
INNER JOIN orders 
ON employees.employee_id = orders.employee_id 
AND employees.office_id = orders.office_id;

Результат:

employee_id name office_id order_id order_date
1 John Doe 1 1 2022-01-01
1 John Doe 1 2 2022-02-01
2 Jane Doe 2 3 2022-03-01

В этом примере мы объединяем таблицы employees и orders по двум столбцам — employee_id и office_id. Здесь мы используем оператор AND, чтобы объединить строки только в том случае, если значения обоих столбцов совпадают в обеих таблицах.

Техноблог
Добавить комментарий