logo

Rozdiel medzi ľavým spojením a ľavým vonkajším spojením

Databáza v akomkoľvek počítačovom systéme je zbierka štruktúrovaných alebo neštruktúrovaných údajov, ktoré možno použiť na vykonávanie rôznych možností, ako je vytváranie, mazanie atď. Táto databáza je riadená špeciálnym jazykom známym ako SQL . V jazyku SQL existujú rôzne spojenia, ktoré sa používajú na zostavenie riadkov z dvoch alebo viacerých tabuliek zo súvisiaceho stĺpca. Niektoré spojenia sú Vnútorné spojenie , Ľavé pripojenie , a Správne Pripojte sa . V tomto článku preskúmame koncepty s príkladmi Ľavé pripojenie a Ľavé vonkajšie spojenie. Spolu s tým si prejdeme aj ich hlavné rozdiely.

Ľavé pripojenie

Left Join v jazyku SQL sa používa na vrátenie všetkých údajov alebo záznamov z ľavej tabuľky a zodpovedajúcich údajov alebo záznamov z pravej tabuľky. V scenári, kde neexistuje žiadna zhoda, spojenie stále pozostáva z riadkov z ľavej tabuľky a zobrazuje hodnoty NULL pre stĺpce pravej tabuľky.

V kontexte dotazu je nižšie syntax ľavého spojenia.



Syntax

SELECT stĺpce FROM left_table

LEFT JOIN right_table ON

join_condition;

Teraz pochopme ľavé spojenie na jednoduchom príklade:

Príklad:

1. Tabuľka Customer_Data:

customer_id

Meno zákazníka

1

Gaurav

2

nahradiť všetko

Anjali

3

Ramesh

2. Tabuľka s údajmi o objednávkach:

Číslo objednávky

customer_id

dátum objednávky

1

1

2023-01-23

2

1

2023-02-03

3

3

2023-03-05

4

4

2023-04-10

Dopyt na ľavé pripojenie

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;>

Výsledok/Výstup

customer_id

java zoznamy

Meno zákazníka

Číslo objednávky

dátum objednávky

1

Gaurav

1

2023-01-23

1

Gaurav

2

2023-02-03

2

Anjali

NULOVÝ

NULOVÝ

3

Ramesh

3

2023-03-05

Vysvetlenie

Vo vyššie uvedenom príklade. Ľavé spojenie obsahuje všetky riadky z ľavej tabuľky ( Customer_Data ) a priradil ich k zodpovedajúcim riadkom pravej tabuľky ( Objednávky_Údaje ). Tu má zákazník Gaurav 2 objednávky, Anjali nemá žiadne objednávky (NULL) a Ramesh má 1 objednávku.

Ľavý vonkajší spoj

Koncept Ľavý vonkajší spoj je podobný a rovnaký ako Left Join a oba tieto pojmy sa používajú zameniteľne. Tu použité kľúčové slovo je Vonkajšie , ktorá je voliteľná a tiež neovplyvňuje výsledok.

Pozrime sa na syntax Left Outer Join:

Syntax

VYBERTE stĺpce

FROM left_table

LEFT OUTER JOIN right_table ON

join_condition;

pivot sql servera

Príklad:

Uvažujme o rovnakých tabuľkách ako vo vyššie uvedenom príklade spojenia vľavo:

Dopyt na ľavé vonkajšie spojenie

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;>

Výsledok/Výstup

customer_id

Meno zákazníka

Číslo objednávky

dátum objednávky

1

Gaurav

1

string json java

2023-01-23

1

Gaurav

2

2023-02-03

2

Anjali

NULOVÝ

NULOVÝ

3

Ramesh

3

2023-03-05

4

NULOVÝ

NULOVÝ

java listnode

NULOVÝ

Vysvetlenie

Vo vyššie uvedenom príklade sa nezhodujúce záznamy z pravej tabuľky ( Objednávky_Údaje ) sú zahrnuté a hodnoty NULL sú zobrazené pre pravé stĺpce tabuľky. Zákazník s „ customer_id ' 4 v Objednávky_Údaje tabuľka, ktorá nemá zodpovedajúci záznam v Customer_Data tabuľka je tiež zahrnutá do sady výsledkov a sú zobrazené hodnoty NULL, čo sa nezobrazilo v stave ľavého spojenia.

Rozdiel medzi ľavým spojením a ľavým vonkajším spojením

Parameter

Ľavé pripojenie

Vonkajšie spojenie

Zodpovedajúce záznamy

V ľavom spojení sú zahrnuté zodpovedajúce záznamy z pravej tabuľky.

V ľavom vonkajšom spojení sú zahrnuté zodpovedajúce záznamy z pravých tabuliek.

Nezhodné záznamy

V ľavom spojení sú nezhodné záznamy z tabuľky úplne vpravo vylúčené.

V ľavom vonkajšom spojení sú zahrnuté nezhodné záznamy z pravej tabuľky a pre pravé stĺpce tabuľky sa zobrazí hodnota NULL.

Pripojiť kľúčové slovo

ĽAVÉ PRIPOJENIE

ĽAVÉ VONKAJŠIE SPOJENIE

Nulové hodnoty

Pre pravé stĺpce tabuľky sa nezobrazujú žiadne hodnoty NULL.

V prípade, že neexistuje žiadna zhoda, pre pravé stĺpce tabuľky sa zobrazia hodnoty NULL.

Syntax

SELECT stĺpce FROM left_table LEFT JOIN right_table ON join_condition;

SELECT stĺpce FROM left_table LEFT OUTER JOIN right_table ON join_condition;

Časté otázky o ľavom spojení a ľavom vonkajšom spojení

1. Kedy by sme mali použiť ľavé spojenie?

Left Join by ste mali použiť, keď potrebujeme vrátiť všetky riadky z tabuľky úplne vľavo, aj keď v tabuľke úplne vpravo nie sú žiadne zodpovedajúce riadky. To je užitočné v scenári, keď chceme vypísať všetky údaje z ľavej tabuľky bez ohľadu na to, či obsahuje údaje v pravej tabuľke.

2. Aké sú výhody používania Left Join?

Používanie Left Join má rôzne typy výhod, potenciálne nám umožňuje zobraziť všetky údaje v ľavej tabuľke, aj keď v pravej tabuľke žiadne údaje nemá. Toto je možné použiť na úlohy auditu.

3. Vysvetlite výsledky ľavého vonkajšieho spojenia.

Výsledky Left Outer Join pozostávajú z riadkov z ľavej tabuľky a tiež zhodných riadkov z pravej tabuľky. V prípade, že neexistujú žiadne zodpovedajúce riadky z pravej tabuľky, zodpovedajúce stĺpce v sade výsledkov sa zobrazia ako NULL.

4. Môžeme použiť klauzulu ORDER BY spolu s ľavým vonkajším spojením?

Áno, v dotaze môžeme použiť klauzulu ORDER BY spolu s ľavým vonkajším spojením. Tým sa zoradia výsledky spojenia ako pri akomkoľvek inom dotaze.