Baza de date din orice sistem informatic este o colecție de date structurate sau nestructurate care pot fi utilizate pentru a efectua diverse opțiuni, cum ar fi crearea, ștergerea, etc. Această bază de date este gestionată de un limbaj special cunoscut sub numele de SQL . În limbajul SQL există diferite îmbinări care sunt folosite pentru a asambla rânduri din două sau mai multe tabele din coloana aferentă. Unele dintre uniuni sunt Inner Join , Left Join , și Alăturați-vă corect . În acest articol, vom explora conceptele cu exemple de Left Join și Left Outer Join. Odată cu aceasta, vom trece și prin principalele diferențe ale acestora.
Left Join
Left Join în limbajul SQL este folosit pentru a returna toate datele sau înregistrările din tabelul din stânga și datele sau înregistrările care se potrivesc din tabelul din dreapta. În scenariul în care nu există nicio potrivire, atunci îmbinarea constă în continuare din rândurile din tabelul din stânga și afișează Valori NULL pentru coloanele tabelului din dreapta.
În contextul interogării, mai jos este sintaxa Left Join.
Sintaxă
SELECTAȚI coloanele FROM left_table
LEFT JOIN right_table ON
join_condition;
Acum, să înțelegem Left Join printr-un exemplu simplu:
Exemplu:
1. Tabel de date_client:
| Număr de înregistrare client | Numele clientului |
|---|---|
| 1 | Gaurav |
| 2 ceva rapid | Anjali |
| 3 | Ramesh |
2. Comenzi_Tabel de date:
| Comanda ID | Număr de înregistrare client | Data comandă |
|---|---|---|
| 1 | 1 | 23-01-2023 |
| 2 | 1 | 2023-02-03 |
| 3 | 3 | 2023-03-05 |
| 4 ssis | 4 | 2023-04-10 |
Interogare pentru Left Join
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;>
Rezultat/Ieșire
| Număr de înregistrare client | Numele clientului | Comanda ID | Data comandă |
|---|---|---|---|
| 1 | Gaurav | 1 | 23-01-2023 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | Anjali | NUL | NUL |
| 3 | Ramesh | 3 | 2023-03-05 |
Explicaţie
În exemplul de mai sus. Left Join include toate rândurile din tabelul din stânga ( Datele despre consumator ) și le-a potrivit cu rândurile corespunzătoare din tabelul din dreapta ( Date_Comenzi ). Aici, Clientul Gaurav are 2 comenzi, Anjali nu are comenzi (NULL), iar Ramesh are 1 comandă.
Left Outer Join
Conceptul de Left Outer Join este similar și același cu Left Join și ambii acești termeni sunt folosiți interschimbabil. Cuvântul cheie folosit aici este Exterior , care este opțional și, de asemenea, nu afectează rezultatul.
Să vedem sintaxa Left Outer Join:
Sintaxă
SELECTAȚI coloanele
convertiți șirul în intergerFROM left_table
LEFT OUTER JOIN right_table ON
join_condition;
Exemplu:
Să luăm în considerare aceleași tabele folosite în exemplul de alăturare din stânga de mai sus:
Interogare pentru Left Outer Join
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;>
Rezultat/Ieșire
| Număr de înregistrare client | Numele clientului | Comanda ID | Data comandă instrument de tăiere în ubuntu |
|---|---|---|---|
| 1 | Gaurav | 1 | 23-01-2023 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | Anjali | NUL | NUL |
| 3 | Ramesh | 3 | 2023-03-05 |
| 4 | NUL | NUL | NUL |
Explicaţie
În exemplul de mai sus, înregistrările care nu se potrivesc din tabelul din dreapta ( Date_Comenzi ) sunt incluse, iar valorile NULL sunt afișate pentru coloanele din dreapta tabelului. Astfel, clientul cu ‘ Număr de înregistrare client ' 4 în Date_Comenzi tabel, care nu are o înregistrare de potrivire în Datele despre consumator tabelul este de asemenea inclus în setul de rezultate și sunt afișate valorile NULL, care nu au fost afișate în condiția Left Join.
Diferența dintre Left Join și Left Outer Join
| Parametru | Left Join | Unire exterioară |
|---|---|---|
| Înregistrări de potrivire | În Left Join, sunt incluse înregistrările care se potrivesc din tabelul din dreapta. | În Left Outer Join, sunt incluse înregistrările care se potrivesc din tabelele din dreapta. |
| Înregistrări care nu se potrivesc | În Left Join, înregistrările care nu se potrivesc din tabelul din dreapta sunt excluse. | În Left Outer Join, sunt incluse înregistrările care nu se potrivesc din tabelul din dreapta, iar valoarea NULL este afișată pentru coloanele din dreapta tabelului. |
| Alăturați-vă cuvântului cheie | LEFT JOIN | ÎNTREPRINDERE EXTERIOR STÂNGA |
| Valori nule | Nu sunt afișate valori NULL pentru coloanele din tabelul din dreapta. | Valorile NULL sunt afișate pentru coloanele din tabelul din dreapta în cazul în care nu există potriviri. |
| Sintaxă eroare: nu s-a putut găsi sau încărca clasa principală | SELECTAȚI coloanele FROM left_table LEFT JOIN right_table ON join_condition; | SELECT coloane FROM left_table LEFT OUTER JOIN right_table ON join_condition; |
Întrebări frecvente despre Left Join și Left Outer Join
1. Când ar trebui să folosim un Left Join?
Left Join ar trebui folosit atunci când trebuie să returnăm toate rândurile din tabelul din stânga, chiar dacă nu există rânduri care se potrivesc în tabelul din dreapta. Acest lucru este util în scenariul în care dorim să listăm toate datele din tabelul din stânga, indiferent dacă acesta conține date în tabelul din dreapta.
2. Care sunt beneficiile utilizării Left Join?
Există diverse tipuri de beneficii ale utilizării Left Join, ne permite potențial să afișăm toate datele din tabelul din stânga, chiar dacă nu are date în tabelul din dreapta. Acesta poate fi folosit pentru sarcini de audit.
3. Explicați rezultatele Left Outer Join.
Rezultatele Left Outer Join constau din rânduri din tabelul din stânga și, de asemenea, rândurile care se potrivesc din tabelul din dreapta. În cazul în care nu există rânduri care se potrivesc din tabelul din dreapta, coloanele corespunzătoare din setul de rezultate vor fi afișate ca NULL.
4. Putem folosi clauza ORDER BY împreună cu Left Outer Join?
Da, putem folosi clauza ORDER BY împreună cu Left Outer Join în interogare. Aceasta va ordona rezultatele unirii la fel ca în cazul oricărei alte interogări.