Różnice między dołączeniem lewym i prawym

Różnice między dołączeniem lewym i prawym

Lewy vs prawy dołączenie

W radzeniu sobie z SQL dołącz to wspólna nazwa, która pojawia się co jakiś czas. Klauzula Join pomaga w połączeniu rekordów z różnych tabel w zestawie danych. Łączenie w efekcie tworzy tabelę, która może być używana taka, jaka jest lub wdrażana z innymi.  Dlatego wskazane jest zrozumienie tych połączeń i różnic między nimi, aby poznać konkretne połączenie i czy prawe czy lewe powinny być przyjmowane w specjalnych przypadkach.

Aby zrozumieć lepsze połączenia i ich różnice, ważne jest, aby zrozumieć rodzaje dostępnych połączeń. Zasadniczo istnieją trzy rodzaje połączeń. Te połączenia obejmują Wewnętrzne połączenie, połączenie krzyżowe i zewnętrzne połączenie. Wewnętrzne połączenie ogólnie porównuje tabele i daje tylko lub zwróci wynik w przypadku znalezienia dopasowania. Główną funkcją łączenia wewnętrznego jest zmniejszenie wielkości zestawów wyników.

Z drugiej strony Cross dołącza do dwóch tabel i daj powrót każdej możliwej kombinacji pochodzącej z rzędów obu tabel. Od tego połączenia oczekuje się wielu wyników, a większość z nich może nawet nie mieć znaczenia. Używanie tego połączenia powinno zatem praktykować ostrożnie.

Zewnętrzne połączenie ma porównanie tabel i zwraca dane, gdy dopasowanie jest dostępne. Tak jak widać w wewnętrznym połączeniu, zewnętrzne dołączenie duplikatuje rzędy w danym tabeli w przypadku, gdy widać dopasowanie rekordów. Wyniki zewnętrznych połączeń są zwykle większe, a zatem zestawy danych są duże, ponieważ sam w sobie nie jest usuwany z zestawu.

Łączenie lewe odnosi się do przechowywania wszystkich rekordów z pierwszej tabeli niezależnie od wyniku, a wstawienie wartości zerowych, gdy drugie wartości tabeli nie pasują. Z drugiej strony właściwe połączenie odnosi się do przechowywania wszystkich rekordów pochodzących z drugiej tabeli, niezależnie od tego, jaki jest wynik, i użycie wartości zerowych, gdy wyniki nie pasują do tych w pierwszej tabeli.

Lewy zewnętrzny połączenie zachowuje zatem wszystkie rzędy znajdujące się w tabeli „lewy”, niezależnie od tego, czy istnieje rzędu pasującego do stolika „prawej”. Lewa tabela odnosi się zatem do tabeli, która jest pierwsza we wspólnym stwierdzeniu. Powinien pojawić się po lewej stronie słowa kluczowego „dołącz” do stolika. Po zakończeniu lewego połączenia zewnętrznego wszystkie rzędy od lewej powinny zostać zwrócone. Nie dopasowujące kolumny w tabeli będą wypełnione null, gdy nie ma dopasowania.

Należy zauważyć, że w radzeniu sobie z tymi dwoma połączeniami wszystkie rzędy od lewej tabeli są pokazane w tabeli w lewym połączeniu zewnętrznym. Wyniki pokazują same niezależnie od tego, czy jakieś pasujące kolumny są obecne w odpowiedniej tabeli.  W prawym połączeniu zewnętrznym pokazano wszystkie rzędy z prawej, a to niezależnie od tego, czy są jakieś pasujące kolumny po lewej stronie tabeli.

Wybór, czy wybrać się na lewe zewnętrzne połączenie, czy prawe połączenie zewnętrzne nie ma znaczenia, ponieważ pokazano te same wyniki. Funkcjonalność, którą przedstawia prawe zewnętrzne połączenie, jest tą samą funkcją, którą przedstawia lewe zewnętrzne połączenie. Po prostu przełączając kolejność, w jakiej tabele pojawiają się w instrukcji SQL, możesz oczekiwać podobnych wyników, niezależnie od użytego połączenia.

Streszczenie

Dołączają do trzech głównych grup - Wewnętrzne dołączenie, połączenie krzyżowe i dołączenie zewnętrzne

Lewe zewnętrzne połączenie wyświetla wszystkie rzędy z lewej strony stołu

Prawy połączenie wyświetla wszystkie rzędy z prawej strony tabeli

Na przemian sekwencji SQL może wyeliminować użycie zarówno prawych, jak i lewej zewnętrznej, i zamiast tego użyć tylko jednego.