Różnica między lewym złączeniem a lewym zewnętrznym złączeniem

Lewy łączenie vs Lewy łączenie zewnętrzne

W SQL sprzężenia są używane do łączenia rekordów pochodzących z różnych zestawów danych. Złączenie może być złączeniem wewnętrznym lub zewnętrznym. Sprzężenie wewnętrzne zwraca rekordy, które mają dopasowania w obu tabelach, w przeciwieństwie do sprzężenia zewnętrznego, które jest przeciwieństwem sprzężenia wewnętrznego. Sprzężenie zewnętrzne zwraca zatem rekordy, które nie mają dopasowań w żadnej tabeli. Różnice między prawym łączeniem zewnętrznym a lewym łączeniem zewnętrznym omówiono poniżej.

Różnice

Jak wspomniano wcześniej, sprzężenie wewnętrzne wytworzy tylko zestaw rekordów, które są obecne w dwóch porównywanych tabelach. Z drugiej strony pełne sprzężenie zewnętrzne to taki, który tworzy pełny zestaw wszystkich rekordów obecnych w obu porównywanych tabelach. W przypadku braku dopasowań brakujące dopasowania będą miały wartość null.

Lewe sprzężenie zewnętrzne będzie zawierać pełny zestaw rekordów pochodzących z pierwszej tabeli, a pasujące wyniki będą dostępne z wynikami w odpowiedniej tabeli. W przypadku braku pasujących wyników, prawa strona będzie zawierać null. Aby utworzyć rekordy tylko w lewym stole, a nie w prawym, należy zastosować klauzulę „gdzie”.

Aby stworzyć unikalne rekordy dla tabeli po prawej i tej po lewej, zalecane jest użycie pełnego sprzężenia zewnętrznego. Po wykonaniu pełnego sprzężenia zewnętrznego stosowana jest klauzula „gdzie”, aby wykluczyć niepożądane wyniki zarówno z „prawej”, jak i „lewej” strony. Ponadto można użyć sprzężenia kartezjańskiego, aby pomóc połączyć wszystko po lewej i po prawej stronie. Czasem nie jest to tym, czego się szuka, ale czasem tak się pojawia. Połączenia tworzą potężny zestaw danych, który daje do 16 wierszy zestawów danych, często znacznie więcej niż się spodziewano. Mimo że otrzymujesz ogromną liczbę zestawów danych, połączenia te są niezwykle niebezpieczne, ponieważ niewielka niezgodność może uszkodzić cały system.

Jeśli masz do czynienia z projektem, który również dąży do kompatybilności serwera Microsoft SQL, korzyści będą wynikać z użycia lewego sprzężenia zewnętrznego. Sekwencja zwrotna zaczyna się od zwracania najpierw wewnętrznych rekordów, następnie prawych rekordów złączeń, a na końcu łączenia lewych rekordów. Użycie instrukcji lewego lub zewnętrznego sprzężenia zewnętrznego w środowisku SQL będzie odnosić się do dokładnie tej samej instrukcji. Zasadniczo oznacza to, że nie ma różnicy w oczekiwanym wyniku, czy zastosowane zostanie lewe połączenie, czy lewe zewnętrzne połączenie. Wynik będzie podobny, chyba że środowisko znajduje się na serwerze Microsoft SQL. Zewnętrzne słowo kluczowe można bez obaw zastosować lub nawet pominąć, ponieważ wyniki nie różnią się w żaden sposób.

streszczenie

Połączenia są używane w SQL do porównywania różnych zestawów danych

Sprzężenie wewnętrzne tworzy tylko zestaw rekordów, który jest obecny w dwóch porównywanych tabelach

Sprzężenie zewnętrzne tworzy pełny zestaw wszystkich rekordów obecnych w obu badanych tabelach

Klauzula „gdzie” używana do tworzenia unikalnych rekordów po zastosowaniu pełnego sprzężenia

Łączenie kartezjańskie łączy lewe i prawe elementy stołu.

Istnieje zauważalna różnica w tym, że lewe i zewnętrzne sprzężenie używane podczas korzystania z serwera Microsoft SQL

Podsumowując, użycie lewego złączenia lub lewego zewnętrznego łącznika odnosi się do dokładnie tego samego wyrażenia. Ponieważ nie ma różnicy, zalecane jest użycie lewego łącznika zewnętrznego.