Пример SQL INNER JOIN | Типы запросов SQL JOIN

Внутреннее соединение SQL используется для объединения записей из двух или более таблиц в базе данных. Внутреннее соединение используется для выбора всех строк из таблиц для соответствия между столбцами в таблицах. SQL INNER JOIN основан на концепции EQUI JOINS. EQUI JOINS — это те, кто использует оператор сравнения (=) для объединения записей из двух или более таблиц. Когда условие удовлетворяется, значения столбцов для каждой совпавшей пары строк двух таблиц объединяются в строку результатов. Вы также можете ознакомиться с учебником SQL LEFT JOIN в этом блоге.

Пример SQL INNER JOIN

Закрашенная часть выше Показывает общие записи между обеими таблицами.

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

Ключевое слово INNER JOIN выбирает все строки из обеих таблиц, пока есть совпадение между колоннами. Если есть записи в таблице «tableA», которые не совпадают в «tableB», эти строки не будут отображаться!

Синтаксис внутреннего соединения

 Выбрать столбцы из Table_1 INNER JOIN Table_2 на Table_1.column = Table_2.column; 

Итак, в приведенных выше операторах столбцы представляют имена столбцов таблиц.

Table_1 и Table_2 — имена таблиц.

И условие, т.е. Table_1.column = Table_2.column , используется для сравнения столбцов, которые являются общими в обе таблицы.

В приведенном выше синтаксисе запрос получил данные из таблиц Table_1 и Table_2 :

  • Сначала укажите основную таблицу ( Table_1 ) в предложении FROM .
  • Вторая таблица в предложении INNER JOIN ( Table_2 ) и предикат соединения. Единственные строки, по которым предикат соединения оценивается как TRUE , включаются в набор результатов.

Предложение INNER JOIN сравнивает каждую строку таблицы Table_1 со строками Table_2 , чтобы найти все пары строк, удовлетворяющие предикату соединения.

Если предикат соединения оценивается как TRUE , значения столбцов совпадающих строк Table_1 и Таблица_2 объединяются в новую строку и включаются в набор результатов.

Давайте посмотрим на пример приведенных выше операторов.

Если вы не знаете как создать таблицу в SQL, тогда вы можете узнать, как создать таблицу и вставить значения в таблицу в этом блоге.

Таблица_1: Сотрудник

Emp_id Emp_name City State Зарплата
101 Рохит Патна Бихар 30000
201 Шивам Джаландхар Пенджаб 20000
301 Каран Аллахабад Уттар-Прадеш 40000
401 Сурадж Калькутта Западная Бенгалия 60000
501 Акаш Визаг Андхра-Прадеш 70000

Таблица_2: Отдел

Dept_no Emp_id
123 301
214 401
125 505

Table_3: Job

Де pt_id Работа
123 Специалист по данным
214 Разработчик приложений
125 Интернет Разработчик

Теперь запрос для внутреннего соединения следующий.

 Выберите Department.Dept_no, Employee.Emp_name, Employee.City, Employee.Salary из отдела INNER JOIN Employee в Department.Emp_id = Employee.Emp_id 

См. вывод ниже.

Объяснение

Как видите, показаны общие записи между столбцами таблицы сотрудников и отдела.

СОЕДИНИТЬ три таблицы

См. следующий запрос SQL INNER JOIN.

 Выберите Department.Dept_no, Employee.Emp_name, Employee.City, Job.Job из ((Department INNER JOIN Employee ON Department.Emp_id = Employee.Emp_id  ) INNER JOIN Job ON Department.Dept_no = Job.Dept_id); 

Вывод

Объяснение

Здесь сначала условие проверяется между таблицей отдел и служащий, а затем проверяется между таблицей «Отдел» и «Работа». Затем отображаются общие записи для всех этих таблиц.

Мы отображаем все столбцы таблицы Employee и Department, используя INNER JOIN .

 Выберите * из Сотрудника ВНУТРЕННЕЕ СОЕДИНЕНИЕ ОТДЕЛЕНИЕ НА Департамент.Emp_id = Employee.Emp_id; 

См. вывод ниже.

  1. SQL не чувствителен к регистру .
  2. При проверке условия равенства необязательно, чтобы имена столбцов обеих таблиц были одинаковыми, они могут быть разными. Единственное, что проверяется, — это запись в этих конкретных столбцах..
  3. INNER JOIN в SQL объединяет две таблицы в соответствии с совпадением определенных критериев с использованием оператора сравнения.

Разница между INNER JOIN и OUTER JOIN

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

Для внутреннего объединения требуется оператор сравнения для сопоставления строк из участвующих таблиц на основе общего поля или столбца обеих таблиц.

В то время как ab OUTER JOIN возвращает все строки из участвующих таблиц, которые удовлетворяют условию, а также те строки, которые не соответствуют условию, появятся в этой операции. Этот набор результатов может отображаться в трех типах формата —

Первый — ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ. Этот вывод соединения включает в себя все строки из левой таблицы предложения JOIN и несовпадающие строки из правой таблицы со значениями NULL для выбранных столбцов.

Второй — RIGHT OUTER JOIN. В этом соединении выходные данные включают все строки справа от причины JOIN и несопоставленные строки из левой таблицы со значениями NULL для выбранных столбцов.

Последняя строка в FULL OUTER JOIN. Это соединение включает совпадающие строки из левой и правой таблиц в предложении JOIN и несопоставленные строки из левой и правой таблицы со значениями NULL для выбранных столбцов.

Наконец, пример запроса SQL INNER JOIN Query | Типы SQL JOIN окончены.

Оцените статью
nanomode.ru
Добавить комментарий