Wewnętrzne dołączenie vs. Zewnętrzne dołączenie

Wewnętrzne dołączenie vs. Zewnętrzne dołączenie


W SQL, a dołączyć służy do porównywania i łączenia - dosłownie łączenia - i zwracania określonych wierszy danych z dwóch lub więcej tabel w bazie danych. Jakiś Wewnętrzne dołączenie znajduje i zwraca dopasowanie danych z tabel, a Zewnętrzne dołączenie Znajduje się i zwraca dopasowane dane I Niektóre odmienne dane z tabel.

Wewnętrzne dołączenie

Wewnętrzne połączenie koncentruje się na podobieństwie między dwoma tabelami. Podczas korzystania z wewnętrznego połączenia muszą być co najmniej pewne pasujące dane między dwiema (lub więcej) porównywanymi tabelami. Wewnętrzne tabele wyszukiwania w celu dopasowania lub nakładania się danych. Po znalezieniu go wewnętrzne połączenie łączy się i zwraca informacje w jedną nową tabelę.

Przykład wewnętrznego połączenia

Rozważmy wspólny scenariusz dwóch tabel: ceny i ilości produktów. Wspólnymi informacjami w dwóch tabelach to nazwa produktu, więc jest to kolumna logiczna do połączenia tabel NA. Istnieją niektóre produkty, które są powszechne w dwóch tabelach; inne są unikalne dla jednej z tabel i nie mają dopasowania w drugim stole.

Wewnętrzny dołącz Produkty Zwraca informacje tylko o tych produktach, które są wspólne w obu tabelach.

Zewnętrzne dołączenie

Zewnętrzne połączenie zwraca zestaw rekordów (lub wierszy), które zawierają powrót wewnętrznego połączenia, ale zawiera także inne wiersze, dla których nie można znaleźć odpowiedniego dopasowania w drugiej tabeli.

Istnieją trzy rodzaje zewnętrznych połączeń:

  • Lewe zewnętrzne połączenie (lub lewe dołączenie)
  • Prawe zewnętrzne połączenie (lub prawe połączenie)
  • Pełne połączenie zewnętrzne (lub pełne połączenie)

Każde z tych zewnętrznych połączeń odnosi się do części porównywanych, łączonych i zwracanych danych. Czasami zerowe będą tworzone w tym procesie, ponieważ niektóre dane są udostępniane, podczas gdy inne dane nie są.

Lewe zewnętrzne połączenie

Lewy zewnętrzny połączenie zwróci wszystkie dane w tabeli 1 i wszystkie udostępnione dane (więc wewnętrzna część przykładu schematu Venna), ale tylko odpowiadające dane z tabeli 2, które są prawym połączeniem.

Pozostawiony przykład dołącz

W naszej przykładowej bazie danych istnieją dwa produkty - pomarańcze i pomidory - na „lewym” (Ceny tabela), które nie mają odpowiedniego wpisu na „prawej” (tabela wielkości). W lewym połączeniu wiersze są zawarte w zestawie wyników z null w kolumnie ilościowej. Pozostałe rzędy w wyniku są takie same jak połączenie wewnętrzne.

Właściwe połączenie zewnętrzne

Prawe zewnętrzne połączenie zwraca dane tabeli 2 i wszystkie udostępnione dane, ale tylko odpowiednie dane z tabeli 1, czyli lewy połączenie.

Prawe przykład dołącz

Podobnie jak w przykładzie złącza lewego, wyjście prawego zewnętrznego połączenia obejmuje wszystkie rzędy połączenia wewnętrznego i dwa rzędy - brokuły i squash - z „prawej” (Wielkie ilości tabela), które nie mają pasujących wpisów po lewej stronie.

Pełne połączenie zewnętrzne

Pełne połączenie zewnętrzne lub pełne połączenie, czyli nie wspierane przez popularny system zarządzania bazą danych MySQL, łączy i zwroty Wszystko dane z dwóch lub więcej tabel, niezależnie od tego, czy są udostępnione informacje. Pomyśl o pełnym połączeniu jako po prostu powielanie wszystkich określonych informacji, ale w jednej tabeli, a nie w wielu tabelach. Tam, gdzie brakuje pasujących danych, zostanie wytworzone zerowe.

To tylko podstawy, ale wiele rzeczy można zrobić z dołączami. Są nawet dołączenia, które mogą wykluczyć inne połączenia!

Wideo wyjaśniające wewnętrzne kontra zewnętrzne połączenia

Ten film wyjaśnia różnicę między różnymi rodzajami połączeń. Jest to uruchomione w momencie, w którym zaczyna się dyskusja na temat połączeń.