Ľavé pripojenie vs Ľavé vonkajšie pripojenie
V SQL sa spojenia používajú na kombináciu záznamov pochádzajúcich z rôznych súborov údajov. Spoj môže byť buď vnútorný spoj, alebo vonkajší spoj. Vnútorná spojka vracia záznamy, ktoré sa zhodujú v oboch tabuľkách, na rozdiel od vonkajšej spojky, ktorá je opakom vnútornej strany. Vonkajšie spojenie preto vracia tie záznamy, ktoré sa nezhodujú v žiadnej tabuľke. Rozdiely medzi pravým vonkajším spojom a ľavým vonkajším spojom sú diskutované nižšie.
rozdiely
Ako už bolo uvedené, vnútorná spojka vytvorí iba súbor záznamov, ktoré sú prítomné v dvoch porovnávaných tabuľkách. Na druhej strane úplná vonkajšia spojka je taká, ktorá vytvára úplnú skupinu všetkých záznamov, ktoré sa nachádzajú v oboch porovnávaných tabuľkách. V prípade, že neexistujú žiadne zhody, budú chýbajúce zhody obsahovať nulovú hodnotu.
Ľavé vonkajšie spojenie bude obsahovať úplnú skupinu záznamov, ktoré pochádzajú z prvej tabuľky, a zodpovedajúce výsledky budú k dispozícii spolu s výsledkami v príslušnej tabuľke. V prípade, že neexistujú žiadne zodpovedajúce výsledky, na pravej strane bude null. Na vytvorenie záznamov iba v ľavej tabuľke, a nie v pravej tabuľke, prichádza do úvahy použitie klauzuly „where“.
Na vytvorenie jedinečných záznamov pre tabuľku vpravo a pre tabuľku naľavo sa odporúča použitie úplného vonkajšieho spojenia. Po vykonaní úplného vonkajšieho spojenia sa klauzula „kde“ používa na vylúčenie výsledkov, ktoré sú nežiaduce z „pravej“ aj „ľavej“ strany. Okrem toho sa karteziánske spojenie môže použiť na spojenie všetkého ľavého a pravého. Niekedy to nemusí byť to, čo sa hľadá, ale niekedy sa to objaví. Spojenia vytvárajú výkonnú množinu údajov, ktorá poskytuje až 16 riadkov množín údajov, často oveľa viac, ako sa očakávalo. Aj keď získate obrovské množstvo dátových súborov, tieto spojenia sú mimoriadne nebezpečné, pretože malá nekompatibilita môže ochromiť celý systém..
Ak pracujete na projekte, ktorý sa tiež snaží o kompatibilitu servera Microsoft SQL, výhody plynúce z použitia ľavého vonkajšieho spojenia. Vrátená sekvencia sa začína tak, že sa najskôr vrátia vnútorné záznamy, potom sa pripoja záznamy o pravých spojeniach a nakoniec spojenie ľavých záznamov. Použitie príkazu ľavého spojenia alebo ľavého vonkajšieho spojenia v prostredí SQL bude odkazovať na presne ten istý príkaz. To v podstate znamená, že neexistuje žiadny rozdiel, pokiaľ ide o očakávaný výsledok, či sa použije ľavý spoj alebo ľavý vonkajší spoj. Výsledok bude podobný, pokiaľ prostredie nie je na serveri Microsoft SQL. Vonkajšie kľúčové slovo možno bez obáv použiť alebo dokonca vynechať, pretože výsledky sa nijako nelíšia.
zhrnutie
Pripojenia sa používajú v SQL na porovnávanie rôznych súborov údajov
Vnútorné spojenie vytvára iba množinu záznamov, ktoré sa nachádzajú v dvoch porovnávaných tabuľkách
Vonkajší spoj vytvorí úplnú sadu všetkých záznamov prítomných v oboch skúmaných tabuľkách
Klauzula „where“ použitá na vytvorenie jedinečných záznamov po použití úplného spojenia
Karteziánske spojenie spája ľavý aj pravý prvok tabuľky.
Tam je pozoruhodný rozdiel, kde ľavý spoj a ľavý vonkajší spoj použitý pri použití servera Microsoft SQL
Celkovo možno povedať, že použitie ľavého alebo ľavého vonkajšieho spojenia sa týka presne toho istého príkazu. Pretože tu nie je žiadny rozdiel, odporúča sa použitie ľavého vonkajšieho spoja.