Baza danych w dowolnym systemie komputerowym to zbiór ustrukturyzowanych lub nieustrukturyzowanych danych, których można używać do wykonywania różnych opcji, takich jak tworzenie, usuwanie itp. Ta baza danych jest zarządzana przez specjalny język znany jako SQL . W języku SQL istnieją różne łączenia, które służą do łączenia wierszy z dwóch lub więcej tabel z powiązanej kolumny. Niektóre połączenia są Połączenie wewnętrzne , Lewe dołączenie , I Prawe dołączenie . W tym artykule omówimy pojęcia na przykładach Lewe dołączenie i lewe połączenie zewnętrzne. Oprócz tego omówimy także ich główne różnice.
Lewe dołączenie
Left Join w języku SQL służy do zwracania wszystkich danych lub rekordów z lewej tabeli i pasujących danych lub rekordów z prawej tabeli. W scenariuszu, w którym nie ma dopasowania, złączenie nadal składa się z wierszy z lewej tabeli i wyświetla Wartości NULL dla kolumn prawej tabeli.
W kontekście zapytania poniżej znajduje się składnia lewego łączenia.
Składnia
WYBIERZ kolumny Z lewej_tabeli
LEWY DOŁĄCZ prawy_stół WŁ
warunek_łączenia;
Teraz zrozummy lewe połączenie na prostym przykładzie:
Przykład:
1. Tabela danych_klienta:
| Identyfikator klienta | nazwa_klienta |
|---|---|
| 1 | Gaurav |
| 2 xor c++ | Anjali |
| 3 | Ramesz |
2. Tabela danych_zamówień:
| identyfikator_zamówienia | Identyfikator klienta | Data zamówienia |
|---|---|---|
| 1 | 1 | 23.01.2023 |
| 2 | 1 | 2023-02-03 |
| 3 3d w autocadzie | 3 | 2023-03-05 |
| 4 | 4 | 2023-04-10 |
Zapytanie o lewe połączenie
SELECT Customer_Data.customer_id, Customer_Data.customer_name, Orders_Data.order_id, Orders_Data.order_date FROM Customers_Data LEFT JOIN Orders ON Customers_Data.customer_id = Orders_Data.customer_id;>
Wynik/wyjście
| Identyfikator klienta | nazwa_klienta | identyfikator_zamówienia | Data zamówienia |
|---|---|---|---|
| 1 | Gaurav | 1 | 23.01.2023 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | Anjali | ZERO | ZERO |
| 3 | Ramesz | 3 | 2023-03-05 |
Wyjaśnienie
W powyższym przykładzie. Opcja Left Join obejmuje wszystkie wiersze z lewej tabeli ( Dane klienta ) i dopasował je do odpowiednich wierszy prawej tabeli ( Zamówienia_Dane ). Tutaj Klient Gaurav ma 2 zamówienia, Anjali nie ma żadnych zamówień (NULL), a Ramesh ma 1 zamówienie.
walnij Elif
Lewe połączenie zewnętrzne
Koncepcja Lewe połączenie zewnętrzne jest podobny i taki sam jak Left Join i oba te terminy są używane zamiennie. Użyte tutaj słowo kluczowe to Zewnętrzny , co jest opcjonalne i również nie ma wpływu na wynik.
Zobaczmy składnię Left Outer Join:
Składnia
WYBIERZ kolumny
Z lewej_tabeli
LEFT OUTER JOIN Right_table WŁ
warunek_łączenia;
Przykład:
Rozważmy te same tabele, które zostały użyte w powyższym przykładzie lewego łączenia:
Zapytanie o lewe złącze zewnętrzne
SELECT Customer_Data.customer_id, Customer_Data.customer_name, Orders_Data.order_id, Orders_Data.order_date FROM Customers_Data LEFT OUTER JOIN Orders ON Customers_Data.customer_id = Orders_Data.customer_id;>
Wynik/wyjście
| Identyfikator klienta | nazwa_klienta | identyfikator_zamówienia | Data zamówienia |
|---|---|---|---|
| 1 | Gaurav | 1 | 23.01.2023 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | Anjali | ZERO | ZERO |
| 3 | Ramesz | 3 | 2023-03-05 |
| 4 | ZERO pełna forma ctc | ZERO | ZERO |
Wyjaśnienie
W powyższym przykładzie niepasujące rekordy z prawej tabeli ( Zamówienia_Dane ) są uwzględnione, a dla prawych kolumn tabeli wyświetlane są wartości NULL. Zatem klient z „ Identyfikator klienta ' 4 w Zamówienia_Dane tabeli, która nie ma pasującego rekordu w pliku Dane klienta tabela jest również uwzględniana w zestawie wyników i wyświetlane są wartości NULL, które nie były wyświetlane w warunku lewego łączenia.
Różnica między lewym złączem a lewym złączem zewnętrznym
| Parametr | Lewe dołączenie | Połączenie zewnętrzne |
|---|---|---|
| Pasujące rekordy | W opcji Left Join uwzględniane są pasujące rekordy z prawej tabeli. | W przypadku lewego łączenia zewnętrznego uwzględniane są pasujące rekordy z prawych tabel. |
| Niepasujące rekordy | W przypadku lewego łączenia niepasujące rekordy z tabeli znajdującej się skrajnie po prawej stronie są wykluczane. | W przypadku lewego łączenia zewnętrznego uwzględniane są niepasujące rekordy z prawej tabeli, a dla prawych kolumn tabeli wyświetlana jest wartość NULL. |
| Dołącz do słowa kluczowego | LEWO DOŁĄCZ | LEWE POŁĄCZENIE ZEWNĘTRZNE |
| Wartości zerowe zaznacz html | W prawych kolumnach tabeli nie są wyświetlane wartości NULL. | Wartości NULL są wyświetlane dla prawych kolumn tabeli w przypadku braku dopasowania. |
| Składnia | WYBIERZ kolumny Z lewej_tabeli LEFT DOŁĄCZ prawej_tabeli ON warunek_łączenia; | WYBIERZ kolumny Z lewej_tabeli LEFT OUTER JOIN prawej_tabeli ON warunek_łączenia; |
Często zadawane pytania dotyczące lewego łączenia i lewego łączenia zewnętrznego
1. Kiedy powinniśmy używać lewego łączenia?
Lewego łączenia należy używać, gdy musimy zwrócić wszystkie wiersze z tabeli znajdującej się najbardziej po lewej stronie, nawet jeśli w tabeli znajdującej się najbardziej po prawej stronie nie ma pasujących wierszy. Jest to przydatne w scenariuszu, gdy chcemy wylistować wszystkie dane z lewej tabeli, niezależnie od tego, czy zawiera ona dane w prawej tabeli.
2. Jakie są korzyści z używania Left Join?
Korzyści ze stosowania Left Join są różne, potencjalnie pozwala nam to wyświetlić wszystkie dane w lewej tabeli, mimo że w prawej tabeli nie ma żadnych danych. Można to wykorzystać do zadań inspekcji.
3. Wyjaśnij wyniki lewego połączenia zewnętrznego.
Wyniki lewego łączenia zewnętrznego składają się z wierszy z lewej tabeli, a także pasujących wierszy z prawej tabeli. Jeśli w prawej tabeli nie ma pasujących wierszy, odpowiednie kolumny w zestawie wyników zostaną pokazane jako NULL.
4. Czy możemy używać klauzuli ORDER BY razem z Left Outer Join?
Tak, w zapytaniu możemy użyć klauzuli ORDER BY wraz z Left Outer Join. Spowoduje to uporządkowanie wyników łączenia tak, jak w przypadku każdego innego zapytania.