Database in elk computersysteem is de verzameling gestructureerde of ongestructureerde gegevens die kunnen worden gebruikt om verschillende opties uit te voeren, zoals aanmaken, verwijderen, enz. Deze database wordt beheerd door een speciale taal die bekend staat als SQL . In de SQL-taal zijn er verschillende joins die worden gebruikt om rijen uit twee of meer tabellen uit de gerelateerde kolom samen te stellen. Sommige van de verbindingen zijn Innerlijke verbinding , Links meedoen , En Rechts meedoen . In dit artikel zullen we de concepten verkennen met voorbeelden van Links meedoen en Left Outer Join. Daarnaast zullen we ook hun belangrijkste verschillen bespreken.
Links meedoen
Left Join in SQL-taal wordt gebruikt om alle gegevens of records uit de linkertabel en de overeenkomende gegevens of records uit de rechtertabel te retourneren. In het scenario waarin er geen overeenkomst is, bestaat de join nog steeds uit de rijen uit de linkertabel en wordt de NULL-waarden voor de kolommen van de rechtertabel.
In de context van de query vindt u hieronder de syntaxis van de Left Join.
Syntaxis
SELECTeer kolommen UIT left_table
LINKS JOIN right_table AAN
join_condition;
Laten we nu de Left Join begrijpen aan de hand van een eenvoudig voorbeeld:
Voorbeeld:
1. Klantgegevenstabel:
| Klanten ID | klantnaam |
|---|---|
| 1 | Gaurav |
| 2 zonnige del | Anjali |
| 3 | Ramesh |
2. Tabel met bestellingen_gegevens:
| Order ID | Klanten ID | besteldatum |
|---|---|---|
| 1 | 1 | 23-01-2023 |
| 2 | 1 | 03-02-2023 |
| 3 lang om te rijgen | 3 | 05-03-2023 |
| 4 | 4 | 10-04-2023 |
Query voor linkse 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;>
Resultaat/uitvoer
| Klanten ID | klantnaam | Order ID | besteldatum |
|---|---|---|---|
| 1 | Gaurav | 1 | 23-01-2023 |
| 1 | Gaurav | 2 | 03-02-2023 |
| 2 | Anjali | NUL | NUL |
| 3 | Ramesh | 3 | 05-03-2023 |
Uitleg
In het bovenstaande voorbeeld. Left Join omvat alle rijen uit de linkertabel ( Klantgegevens ) en koppelde ze aan de overeenkomstige rijen van de rechtertabel ( Bestellingen_gegevens ). Hier heeft klant Gaurav 2 bestellingen, Anjali heeft geen bestellingen (NULL) en Ramesh heeft 1 bestelling.
git afrekenen
Linker buitenste verbinding
Het concept van Linker buitenste verbinding is vergelijkbaar en hetzelfde als de Left Join, en beide termen worden door elkaar gebruikt. Het trefwoord dat hier wordt gebruikt is Buitenste , wat optioneel is en ook geen invloed heeft op het resultaat.
Laten we de syntaxis van Left Outer Join eens bekijken:
Syntaxis
SELECTEER kolommen
VAN linker_tabel
LINKS BUITEN JOIN right_table ON
join_condition;
Voorbeeld:
Laten we dezelfde tabellen bekijken die worden gebruikt in het bovenstaande Left Join-voorbeeld:
Query voor 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;>
Resultaat/uitvoer
| Klanten ID | klantnaam | Order ID | besteldatum |
|---|---|---|---|
| 1 | Gaurav | 1 | 23-01-2023 |
| 1 | Gaurav | 2 | 03-02-2023 |
| 2 | Anjali | NUL | NUL |
| 3 | Ramesh | 3 | 05-03-2023 |
| 4 | NUL vlc om youtube te downloaden | NUL | NUL |
Uitleg
In het bovenstaande voorbeeld zijn niet-overeenkomende records uit de rechtertabel ( Bestellingen_gegevens ) zijn opgenomen en NULL-waarden worden weergegeven voor de rechter tabelkolommen. Zo heeft de klant met ‘ Klanten ID ' 4 in de Bestellingen_gegevens tabel, die geen overeenkomende record heeft in de Klantgegevens tabel is ook opgenomen in de resultatenset en de NULL-waarden worden weergegeven, wat niet werd weergegeven in de Left Join-voorwaarde.
Verschil tussen Left Join en Left Outer Join
| Parameter | Links meedoen | Buitenste verbinding |
|---|---|---|
| Overeenkomende records | In Left Join worden overeenkomende records uit de rechtertabel opgenomen. | In Left Outer Join worden overeenkomende records uit de rechtertabellen opgenomen. |
| Niet-overeenkomende records | In Left Join worden niet-overeenkomende records uit de meest rechtse tabel uitgesloten. | In Left Outer Join worden niet-overeenkomende records uit de rechtertabel opgenomen en wordt de NULL-waarde weergegeven voor de rechtertabelkolommen. |
| Zoekwoord meedoen | LINKS AANMELDEN | LINKS BUITENVERBINDING |
| Nulwaarden tekenreeks in Java-formaat | Er worden geen NULL-waarden weergegeven voor de rechter tabelkolommen. | NULL-waarden worden weergegeven voor de rechter tabelkolommen als er geen overeenkomst is. |
| Syntaxis | SELECTEER kolommen VAN left_table LEFT JOIN right_table ON join_condition; | SELECTEER kolommen VAN left_table LEFT OUTER JOIN right_table ON join_condition; |
Veelgestelde vragen over Left Join en Left Outer Join
1. Wanneer moeten we een Left Join gebruiken?
Left Join moet worden gebruikt als we alle rijen uit de meest linkse tabel moeten retourneren, zelfs als er geen overeenkomende rijen in de meest rechtse tabel staan. Dit is handig in het scenario waarin we alle gegevens uit de linkertabel willen weergeven, ongeacht of deze gegevens in de rechtertabel bevatten.
2. Wat zijn de voordelen van het gebruik van Left Join?
Er zijn verschillende soorten voordelen bij het gebruik van Left Join. Het stelt ons mogelijk in staat om alle gegevens in de linkertabel weer te geven, ook al bevat deze geen gegevens in de rechtertabel. Dit kan worden gebruikt voor audittaken.
3. Verklaar de resultaten van Left Outer Join.
De resultaten van Left Outer Join bestaan uit rijen uit de linkertabel, en ook uit de overeenkomende rijen uit de rechtertabel. Als er geen overeenkomende rijen uit de rechtertabel zijn, worden de overeenkomstige kolommen in de resultatenset weergegeven als NULL.
4. Kunnen we de ORDER BY-clausule samen met Left Outer Join gebruiken?
Ja, we kunnen de ORDER BY-clausule samen met Left Outer Join in de query gebruiken. Hierdoor worden de resultaten van de join gerangschikt zoals bij elke andere query.