Сравнительная таблица
Основа для сравнения | Внутреннее соединение | Внешнее соединение |
---|---|---|
основной | Inner Join выводит только совпадающие кортежи из обеих таблиц. | Outer Join отображает все кортежи из обеих таблиц. |
База данных | Потенциальный размер базы данных, возвращаемой Inner Join, сравнительно меньше, чем Outer Join. | Внешнее соединение возвращает сравнительно большую базу данных. |
Типы | Нет типов. | Левое внешнее соединение, Правое внешнее соединение, и полное внешнее соединение. |
Определение внутреннего соединения
Внутреннее соединение также называется естественным соединением. Inner Join сравнивает две таблицы и объединяет совпадающий кортеж в обеих таблицах. Он также называется типом соединения по умолчанию, поскольку предложение Join пишется без внутреннего ключевого слова, которое выполняет естественное соединение. Если предложение Join написано без ключевого слова Outer, то также выполняется внутреннее соединение.
Внутреннее соединение можно объяснить на примере. Есть два стола ученический стол и стол отдела. Теперь давайте поймем, что выполняет внутреннее соединение.
Вы можете видеть, что в результате получаются только те кортежи, где Student.Department_ID = Department.ID. Следовательно, можно сказать, что Inner Join объединяет только совпадающий кортеж из двух таблиц.
Определение внешнего соединения
В отличие от Inner Join, выводятся только те кортежи, которые имеют одинаковые значения атрибутов в обеих сравниваемых таблицах; Outer Join выводит все кортежи обеих таблиц. Внешнее соединение бывает трех типов: левое внешнее соединение, правое внешнее соединение и полное внешнее соединение .
Позвольте нам понять их один за другим. Во-первых, давайте возьмем левое внешнее соединение.
Выберите Имя, Фамилия_Имя из левого внешнего студента Присоединиться к Отделу ON Student.Department_ID = Depoartment.ID.
Выберите Имя, Имя_отдела Из Отдела справа Внешнее Присоединитесь к Студенту ON Student.Department_ID = Depoartment.ID.
Выберите Имя, Имя_отдела Из Отдела полного внешнего присоединения студента ON Student.Department_ID = Depoartment.ID.
Ключевые различия между внутренним и внешним соединением
- Основное различие между внутренним объединением и внешним соединением состоит в том, что внутреннее объединение сравнивает и объединяет только совпадающие кортежи из таблиц. С другой стороны, Outer Join сравнивает и объединяет все кортежи из обеих сравниваемых таблиц.
- Размер базы данных результирующего, полученного из Inner Join, меньше, чем Outer Join.
- Существует три типа внешнего соединения: левое внешнее соединение, правое внешнее соединение и полное внешнее соединение. Но у внутреннего Join нет таких типов.
Заключение:
Оба соединения очень полезны. Их использование зависит от требований пользователя.