Sobes.tech
Junior
105
questionbank

Что такое INNER JOIN в SQL?

AI答案

sobes.tech AI

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

Визуально это можно представить как пересечение двух множеств.

Синтаксис:

SELECT column_name(s)
FROM table1
INNER JOIN table2 ON table1.column_name = table2.column_name;

Пример:

Пусть есть две таблицы: Customers и Orders.

Таблица Customers:

CustomerID CustomerName
1 Иван
2 Мария
3 Петр

Таблица Orders:

OrderID CustomerID OrderDate
101 1 2023-10-26
102 2 2023-10-26
103 1 2023-10-27
104 4 2023-10-27

Запрос INNER JOIN:

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

Результат:

CustomerName OrderID
Иван 101
Мария 102
Иван 103

Строка с CustomerID 3 из таблицы Customers не попала в результат, так как у нее нет соответствующих заказов в таблице Orders. Строка с OrderID 104 из таблицы Orders не попала в результат, так как у нее нет соответствующего клиента в таблице Customers.

INNER JOIN является наиболее распространенным типом JOIN.