Różnica między złączeniem wewnętrznym i zewnętrznym w SQL

Autor: Laura McKinney
Data Utworzenia: 2 Kwiecień 2021
Data Aktualizacji: 12 Móc 2024
Anonim
Różnica między złączeniem wewnętrznym i zewnętrznym w SQL - Technologia
Różnica między złączeniem wewnętrznym i zewnętrznym w SQL - Technologia

Zawartość


Łączenie wewnętrzne i łączenie zewnętrzne to typy łączenia. Połącz porównuje i łączy krotki z dwóch relacji lub tabel. Łączenie wewnętrzne określa naturalne łączenie, tzn. Jeśli napiszesz klauzulę łączenia bez słowa kluczowego Wewnętrzne, wówczas wykona operację łączenia naturalnego. Potencjalna różnica między złączeniem wewnętrznym a zewnętrznym polega na tym Przyłączenie wewnętrzne zwraca tylko pasujące krotki zarówno z tabeli, jak i Outer Join zwraca wszystkie krotki z obu porównywanych tabel. Omówmy kilka innych różnic między złączeniem wewnętrznym i zewnętrznym za pomocą tabeli porównawczej pokazanej poniżej.

  1. Wykres porównania
  2. Definicja
  3. Kluczowe różnice
  4. Wniosek

Wykres porównania

Podstawa do porównaniaPrzyłączenie wewnętrzneOuter Join
PodstawowyŁączenie wewnętrzne generuje tylko pasujące krotki z obu tabel.Outer Join wyświetla wszystkie krotki z obu tabel.
Baza danychPotencjalny rozmiar bazy danych zwrócony przez łączenie wewnętrzne jest stosunkowo mniejszy niż łączenie zewnętrzne.Sprzężenie zewnętrzne zwraca stosunkowo większą bazę danych.
RodzajeBrak typówLewy zewnętrzny łącznik,
Right Outer Join,
i pełne zewnętrzne dołączenie.


Definicja sprzężenia wewnętrznego

Łączenie wewnętrzne jest również nazywane łączeniem naturalnym. Inner Join porównuje dwie tabele i łączy pasującą krotkę w obu tabelach. Jest również nazywany domyślnym typem łączenia, ponieważ klauzula Join jest zapisywana bez wewnętrznego słowa kluczowego, które wykonuje naturalne łączenie. Jeśli klauzula Join jest napisana bez słowa kluczowego Zewnętrzne, wówczas wykonywane jest również sprzężenie wewnętrzne.

Łączenie wewnętrzne można wyjaśnić przykładem. Istnieją dwie tabele tabeli ucznia i tabela działu. Teraz pozwala nam zrozumieć, co wykonuje wewnętrzne łączenie.

WYBIERZ Imię, Sem, nazwa_działu OD WEJŚCIA DO WEWNĘTRZNEGO UWAGI Departament ON Student.Department_ID = Department.ID.


Widać, że tylko te krotki są uzyskiwane w wyniku, w którym Student.Department_ID = Department.ID. Dlatego możemy powiedzieć, że łączenie wewnętrzne łączy tylko pasującą krotkę dwóch tabel.

Definicja sprzężenia zewnętrznego

W przeciwieństwie do Inner Join, tylko te krotki są wyjściowe, które mają takie same wartości atrybutów w obu porównywanych tabelach; Łączenie zewnętrzne generuje wszystkie krotki w obu tabelach. Sprzężenie zewnętrzne ma trzy typy Lewy zewnętrzny łącznik, Right Outer Join, i Pełny łącznik zewnętrzny.

Pozwól nam zrozumieć je jeden po drugim. Najpierw weźmy lewy zewnętrzny łącznik.

Wybierz Nazwisko, Nazwa działu od Studenta Lewy zewnętrzny Dołącz do działu ON Student.Department_ID = Depoartment.ID.

Możesz zobaczyć, że wszystkie krotki z tabeli uczniów są wyświetlane w wyniku.

Wybierz Nazwa, nazwa działu z działu Prawa zewnętrzna Dołącz do studenta ON Student.Department_ID = Depoartment.ID.

Możesz zobaczyć, że wyświetlane są wszystkie krotki z tabeli działu.

Wybierz Imię, nazwa_działu od studenta Całkowicie zewnętrzny dołącz do działu ON Student.Department_ID = Depoartment.ID.

Możesz zaobserwować, że wszystkie krotki z obu tabel są wyświetlane w wyniku.

  1. Podstawowa różnica między połączeniem wewnętrznym i zewnętrznym polega na tym, że łączenie wewnętrzne porównuje i łączy tylko pasujące krotki z obu tabel. Z drugiej strony Outer Join porównuje i łączy wszystkie krotki z obu porównywanych tabel.
  2. Rozmiar bazy danych wyniku uzyskanego ze sprzężenia wewnętrznego jest mniejszy niż sprzężenie zewnętrzne.
  3. Istnieją trzy rodzaje sprzężenia zewnętrznego lewy zewnętrzny, prawy zewnętrzny i pełny zewnętrzny. Ale wewnętrzny Join nie ma takich typów.

Wniosek:

Oba połączenia są bardzo przydatne. Ich użycie zależy od wymagań użytkownika.