Logo pl.removalsclassifieds.com

Różnica między lewym i prawym złączem (z tabelą)

Spisu treści:

Anonim

Join to typowy moniker i element polecenia, który pojawia się od czasu do czasu podczas pracy z SQL. Klauzula join ułatwia łączenie rekordów z różnych tabel podczas zbierania danych. Złączenie generuje tabelę, która może być używana samodzielnie lub w połączeniu ze sobą. Zaleca się zatem zrozumienie tych złączeń i różnic między nimi w celu określenia konkretnego złączenia, a także tego, czy w wyjątkowych przypadkach należy wybrać prawe czy lewe.

Połączenie lewe a połączenie prawe

Różnica między złączeniem lewym a złączeniem prawym polega na tym, że włączenie niedopasowanych wpisów jest podstawową różnicą między obydwoma typami złączeń. LEFT JOIN przetwarza wszystkie wpisy z lewej strony, a także sparowane wiersze z prawej tabeli, podczas gdy RIGHT JOIN dostarcza wszystkie wiersze z prawej strony, a także niedopasowane wiersze z lewego panelu.

Nawet jeśli po prawej stronie tabeli nie ma dopasowania, proces SQL LEFT odbiera wszystkie wpisy z lewej tabeli. Oznacza to, że gdy klauzula ON zawiera 0 (zero) wpisów po prawej stronie tabeli, łączenie nadal zwraca rekord z wartością NULL w każdym polu z głównej tabeli. Oznacza to, że lewe złączenie dostarcza najpierw wszystkie dane z lewej tabeli, a także wszelkie dopasowane wartości z prawej tabeli lub NULL, jeśli nie istnieje odpowiedni predykat złączenia.

Z drugiej strony prawe sprzężenie stwierdza, że ​​nawet w lewej tabeli, SQL RIGHT odbiera i wysyła wszystkie wpisy z prawej tabeli. Oznacza to, że nawet jeśli klauzula ON zawiera 0 (zero) wpisów w lewej bazie danych, złączenie nadal wygeneruje wiersz z wartością NULL w każdym polu z lewej tabeli, tak jak lewe złączenie, ale na odwrót.

Oznacza to, że prawe sprzężenie dostarcza wszystkie dane z prawej tabeli, a także wszelkie zaakceptowane wartości z tabel lub NULL, jeśli dla tej operacji nie istnieje odpowiedni predykat złączenia.

Tabela porównawcza między lewym i prawym złączem

Parametry porównania

Dołącz do lewej

Prawe dołączenie

Stosowanie

Łączy wiele tabel i udostępnia wszystkie rekordy z lewej tabeli, a także pasujące wiersze z prawej. Łączy wiele tabel i dostarcza wszystkie dane z prawej tabeli, a także pasujące wiersze najpierw z lewej tabeli.
Wykonanie zapytania

Podczas realizacji zapytania zawierającego lewe sprzężenie najpierw odbierane są wszystkie wpisy z tabel, a następnie za pomocą pętli stosowych uzyskiwane są pasujące dane z prawych wartości kolumn tabeli, a wartość NULL jest zastępowana innymi niedopasowanymi danymi. Podczas implementacji zapytania obejmującego prawe sprzężenie najpierw pozyskiwane są wszystkie dane z prawej tabeli, a następnie za pomocą pętli stosowych zbierane są dopasowane rekordy wartości w lewej kolumnie tabeli.
Zestaw wyników

Wartość zestawu wyników będzie wynosić NULL lub zero, jeśli w prawej tabeli nie zostaną znalezione pasujące dane. Wartość zestawu wyników będzie wynosić NULL lub zero, jeśli w lewej tabeli nie zostaną znalezione pasujące dane.
Termin synonimiczny

LEWE POŁĄCZENIE ZEWNĘTRZNE PRAWE POŁĄCZENIE ZEWNĘTRZNE
Składnia

SELECT nazwa_kolumny (y) FROM table1LEFT JOIN table2ON table1.column_name = table2.column_name; SELECT nazwa_kolumny (y) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;

Co to jest lewe sprzężenie?

Aby scalić dane z dwóch baz danych w zależności od kolumny zawierającej pasujące wartości, używamy JOIN w SQL. Na przykład, jeśli masz tabelę zawierającą dane klienta (ID klienta, imię nazwisko, identyfikator itp.), a następnie inną tabelę zawierającą dane zamówienia na określony czas (identyfikator transakcji, czas, identyfikator klienta, identyfikator produktu itp.).), możesz połączyć oba zbiory danych za pomocą kolumn zawierających numery identyfikatorów klientów. Dzięki temu uzyskasz informacje o zamówieniu i kliencie dla każdego klienta, a klauzula łączenia lewego odgrywa kluczową rolę w wykonaniu tej operacji.

Przyjrzyjmy się składni Left Join, aby właściwie zrozumieć jego użyteczność:

WYBIERZ nazwy kolumn

Z tabeli1

LEWY DOŁĄCZ stół2

ON table1.column_name = table2.column_name

Na początek bazy danych sprawdzają każdy wpis w lewej tabeli, a następnie szukają dopasowania w prawej tabeli w zależności od połączonych kolumn. Jeśli zostanie znalezione dopasowanie, dane z prawej tabeli zostaną dodane do pasującego wiersza w lewej tabeli. Jeśli istnieje wiele pasujących znalezisk, kolumna w lewej tabeli jest duplikowana, aby uwzględnić wszystkie dane bezpośrednio z prawej tabeli. Jeśli nie zostanie znalezione żadne dopasowanie, zachowuje wiersz z lewej tabeli, a następnie wstawia wartość NULL do odpowiednich kolumn prawej tabeli.

Co to jest prawidłowe dołączenie?

Mówiąc wprost, operacja prawego sprzężenia jest bardzo podobna do lewego sprzężenia, wręcz przeciwnie. Aby lepiej zrozumieć, przejdziemy przez analizę składni i w tym przypadku ważne jest ogólne użycie prawego sprzężenia, a także link do lewej tabeli.

Prawe sprzężenie SQL dostarcza wszystkie informacje z wierszy odpowiedniej tabeli. Zawiera również potwierdzone wartości z lewej tabeli; jeśli jednak nie zostaną znalezione żadne dopasowania w obu bazach danych, dostarcza wartość NULL. Sprzężenia prawe są zasadniczo bardzo podobne do złączeń lewych, ponieważ pobierają wszystkie wiersze z tabeli określonej w wyrażeniu RIGHT JOIN, ale tylko odpowiadające wiersze z tabeli określonej w klauzuli FROM.

RIGHT JOIN jest rzadko używane, ponieważ zawartość RIGHT JOIN można uzyskać po prostu zamieniając etykiety dwóch połączonych tabel w LEFT JOIN.

Tradycja polegająca na ciągłym używaniu LEFT JOIN najprawdopodobniej sprawia, że ​​zapytania są łatwiejsze do zrozumienia i weryfikacji, chociaż nie ma przekonującego powodu, aby unikać używania RIGHT JOIN. Warto wspomnieć, że LEFT JOIN i RIGHT JOIN mogą być również wyrażone jako LEFT OUTER JOIN oraz RIGHT OUTER JOIN.

Składnia Right Join jest opisana poniżej. Operacje prawego i lewego sprzężenia są identyczne, ale w odwrotnej kolejności:

SELECT nazwa(y)_kolumnFROM tabela1RIGHT JOIN tabela2ON tabela1.nazwa_kolumny = tabela2.nazwa_kolumny

Główne różnice między lewym złączem a prawym złączem

Wniosek

Podczas interakcji z tymi różnymi sprzężeniami ważne jest, aby wiedzieć, że w przypadku lewego sprzężenia zewnętrznego wszystkie kolumny z lewej strony tabeli są widoczne w bazie danych. Wyniki pojawiają się niezależnie od tego, czy dopasowane kolumny są dostępne we właściwej tabeli. Nie ma znaczenia, czy używasz lewego, czy prawego sprzężenia zewnętrznego, ponieważ konsekwencje są takie same. Informacje o procesie przez prawe sprzężenie zewnętrzne są takie same, jak te dostarczane przez lewe sprzężenie zewnętrzne.

Bibliografia

Różnica między lewym i prawym złączem (z tabelą)