Рекомендуємо, 2024

Вибір Редакції

Різниця між внутрішнім приєднанням і зовнішнім з'єднанням в SQL

Внутрішнє Приєднання та Зовнішнє Приєднання обох типів Реєстрація. Приєднання порівнює і комбінує кортежі з двох відносин або таблиць. Внутрішнє з'єднання визначає натуральне з'єднання, тобто якщо ви пишете речення Join без ключового слова, то виконує операцію природного з'єднання. Різниця потенціалів між Inner Join та Outer Join полягає в тому, що Inner Join повертає тільки відповідні кортежі з обох таблиць, а Outer Join повертає всі кортежі з обох порівнюваних таблиць. Давайте обговоримо деякі інші відмінності між Inner Join та Outer Join за допомогою діаграми порівняння, показаної нижче.

Діаграма порівняння

Основа для порівнянняВнутрішнє з'єднанняOuter Join
ОсновнийInner Join виводить лише відповідні кортежі з обох таблиць.Outer Join відображає всі кортежі з обох таблиць.
База данихРозмір потенціалу бази даних, повернутий Inner Join, є порівняно меншим, ніж Outer Join.Зовнішнє з'єднання повертає порівняно більшу базу даних.
ТипиНемає типів.Ліве зовнішнє приєднання,
Праворуч приєднати,
і повне зовнішнє приєднання.

Визначення Внутрішнього Приєднання

Внутрішнє з'єднання також називається природним приєднанням. Внутрішнє з'єднання порівнює дві таблиці і об'єднує відповідний кортеж в обох таблицях. Він також називається типом приєднання за умовчанням, оскільки стаття Join написана без внутрішнього ключового слова, яке виконує природне з'єднання. Якщо пропозиція Join написана без ключового слова Oututer, то виконується також внутрішнє з'єднання.

Внутрішнє з'єднання можна пояснити на прикладі. Є дві таблиці студентського столу і таблиця відділу. Тепер ми можемо зрозуміти, що виконує внутрішнє з'єднання.

Ім'я SELECT, Sem, Deparment_name FROM Студент INNER JOIN Відділ ON Student.Department_ID = Department.ID.

Ви можете бачити, що тільки ті кортежі отримані в результуючому, де Student.Department_ID = Department.ID. Отже, можна сказати, що Inner Join об'єднує тільки відповідний кортеж з двох таблиць.

Визначення зовнішнього приєднання

На відміну від Inner Join, виводяться тільки ті кортежі, які мають однакові значення атрибутів в таблиці порівняння; Outer Join виводить усі кортежі обох таблиць. Outer Join складається з трьох типів: Left Outer Join, Right Outer Join і Full Outer Join .

Давайте зрозуміємо їх один за одним. По-перше, візьмемо ліве зовнішнє приєднання.

Виберіть ім'я, ім'я-департаменту Від учнів лівого зовнішнього підрозділу приєднання на Student.Department_ID = Depoartment.ID.

Ви можете бачити, що всі результати з таблиці студентів відображаються в результаті.

Виберіть Ім'я, ім'я відділу з відділу Праворуч із зовнішнього боку Приєднайтеся до студента Навчаються. Student.Department_ID = Depoartment.ID.

Ви можете бачити, що відображаються всі кортежі з таблиці Департаменту.

Виберіть ім'я, ім'я-департаменту з усього повного зовнішнього підключення студента до навчального закладу Student.Department_ID = Depoartment.ID.

Ви можете помітити, що всі результати з обох таблиць відображаються в результаті.

Ключові відмінності між внутрішнім приєднанням і зовнішнім приєднанням

  1. Основна відмінність між внутрішнім приєднанням і зовнішнім приєднанням полягає в тому, що внутрішнє з'єднання об'єднує і поєднує тільки відповідні кортежі з таблиць. З іншого боку, зовнішні приєднання порівнюють і поєднують всі кортежі з обох таблиць, що порівнюються.
  2. Розмір бази даних, отриманий з Inner Join, менший, ніж Outer Join.
  3. Існують три типи зовнішніх об'єднаних лівих зовнішніх з'єднань, Righ Outer Join та Full Outer Join. Але внутрішнє з'єднання не має таких типів.

Висновок:

Обидва об'єднання дуже корисні. Використання залежить від вимог користувача.

Top