Diferența dintre Left Join și Left Outer Join în SQL - Toate diferențele

 Diferența dintre Left Join și Left Outer Join în SQL - Toate diferențele

Mary Davis

O bază de date constă într-o colecție organizată de informații structurate, de obicei stocate electronic într-un sistem informatic. Mai multe baze de date diferite, cum ar fi SQL Server, Oracle, PostgreSQL și MySQL, utilizează de obicei un limbaj pentru a gestiona datele .

Un astfel de limbaj este cunoscut sub numele de SQL. SQL dispune de diferite comenzi de îmbinare sub forma de Inner Join, Left Join și Right Join.

După cum probabil știți, un Join în SQL este utilizat pentru a asambla rânduri din două sau mai multe tabele din coloana aferentă. Acest lucru poate ridica o întrebare cu privire la ceea ce fac alte variante.

Este puțin confuz, sunt sigur! Dar nu vă faceți griji, vă voi oferi o descriere detaliată a ceea ce sunt și ce înseamnă, și sper că vă va ajuta să înțelegeți mai bine.

Să trecem la treabă!

Ce este SQL?

SQL înseamnă Structured Query Language (limbaj structurat de interogare). Acesta este un limbaj utilizat de diferite baze de date pentru scrierea și interogarea datelor. Permite gestionarea informațiilor cu ajutorul tabelelor și afișează un limbaj de interogare a acestor tabele și a altor obiecte conexe, cum ar fi vizualizări, funcții, proceduri etc.

Donald Chamberlin și Raymond Boyce sunt designeri de SQL, pe care au realizat-o pentru a manipula date. Modelul lor s-a bazat pe lucrările lui Edgar Frank Codd, care a lucrat pentru IBM și a inventat baza de date relațională în anii '70.

Inițial, a fost numit SEQUEL, dar a fost prescurtat în SQL din cauza unor probleme specifice legate de marca comercială. Cu toate acestea, le puteți numi în continuare SEQUEL dacă doriți.

Cu SQL, puteți insera, șterge și actualiza date și crea, șterge sau modifica alte obiecte ale bazei de date. Comenzile SQL standard sunt " select", "delete", "insert", "update", "create", și "drop". . acestea pot realiza tot ceea ce trebuie să facă cineva într-o bază de date.

În plus, acest limbaj este utilizat în mai multe baze de date pentru a ajuta la manipularea datelor și a obiectelor bazei de date. Dacă vi se pare complicat, iată un videoclip care explică ce este SQL pentru începători:

Poate o bază de date să funcționeze fără un limbaj?

De ce folosim SQL?

Este destul de simplu. Nu vom înțelege bazele de date fără SQL. În același mod, nu putem instrui baza de date fără el, deoarece SQL este un sistem utilizat pentru a comunica cu o bază de date.

SQL sistemele îndeplinesc sarcini precum ștergerea, adăugarea sau modificarea Acest sistem este utilizat în mod obișnuit pentru a face este mai ușor să manipulezi cantități mari de date prin gestionarea eficientă a acestora. Câteva sisteme standard de gestionare a bazelor de date relaționale care utilizează SQL includ Oracle, Sybase, Microsoft Access și Ingres.

Ce este Inner Join și Outer Join?

Ei bine, în primul rând, să înțelegem ce sunt îmbinările. În SQL, îmbinările sunt utilizate pentru a combina conținutul diferitelor tabele. Puteți combina datele în mai multe moduri, specificând modul în care doriți să integrați datele și ce tip de Join doriți să utilizați.

O îmbinare interioară este o îmbinare care returnează toate rândurile din ambele tabele participante în care se regăsește elementul esențial. înregistrare a unui tabel este aceeași cu cea critică înregistrări dintr-un alt tabel.

Acest tip de îmbinare a necesitat un operator de comparație pentru a potrivi rândurile din tabelele participante care suportau un câmp sau o coloană standard din ambele tabele.

Outer Join poate returna rânduri nepotrivite în unul sau în ambele tabele Practic, se returnează toate rândurile din toate tabelele care îndeplinesc condițiile.

Există mai multe tipuri diferite de îmbinări exterioare. Printre acestea se numără Left Join, Right Join și Full Outer Join.

Iată un tabel care rezumă funcțiile semnificative ale îmbinărilor disponibile în SQL:

Tipuri de îmbinări: Funcția :
Îmbinare interioară Aceasta returnează rânduri atunci când există cel puțin o potrivire în ambele tabele.
Alăturare externă stânga Aceasta returnează toate rândurile din tabelul din stânga împreună cu rândurile corespunzătoare din tabelul din dreapta.
Îmbinare exterioară dreaptă Aceasta returnează toate rândurile din tabelul din dreapta împreună cu rândurile corespunzătoare din tabelul din stânga.
Îmbinare exterioară completă Aceasta combină left outer Join și right outer Join. Returnează rânduri din oricare dintre tabele atunci când sunt îndeplinite condițiile.

Acest lucru arată diferențele dintre patru îmbinări în SQL.

Diferența dintre Inner și Outer Join

Și nu numai. Diferența semnificativă între îmbinările interioare și exterioare este că îmbinările interioare au ca rezultat, de obicei, intersecția a două tabele. În schimb, Îmbinările exterioare au ca rezultat combinarea a două tabele.

Deci, practic, Îmbinare interioară are ca rezultat suprapunerea unei părți din două seturi de date, așa cum se arată în imaginea de mai jos. Pentru Inner Joins veți combina doar acele rânduri standard din ambele tabele. Pe de altă parte, Outer Joins returnează toate înregistrările cu valori din tabelele din stânga sau din tabelele potrivite.

îmbinările exterioare includ rândurile care corespund și rândurile care nu corespund din tabele. În plus, o îmbinare de tip Îmbinare exterioară diferă de o îmbinare interioară în gestionarea condiției de potrivire falsă.

Left Outer Join constă din Left Outer Join + Inner Join. În timp ce Right Outer Join este, de asemenea, constă din Right Outer Join + Inner Join. Full Outer Join constă din dintre toate.

Left Join (este același lucru cu Left Outer Join în SQL?)

Poate că ați auzit de Left Join în SQL? Ei bine, este același lucru cu Left Outer Join. Acestea au două denumiri diferite pentru aceeași funcție.

Vezi si: A fi un Lifestyler vs. A fi un poliamoros (comparație detaliată) - Toate diferențele

O îmbinare stânga este același lucru cu o îmbinare externă stânga în SQL, iar acestea sunt una singură. Îmbinarea stânga este doar o prescurtare pentru îmbinarea externă stânga. Cuvântul "externă" face mai simplă operațiunea, dar ambele chei îndeplinesc aceleași funcții.

De ce se numește Left Join este numit Left Outer Join?

Veți avea opțiunea de a o apela cu numele extins sau cu cel prescurtat. În plus, sunt exact același lucru.

Amintiți-vă că această îmbinare returnează toate rândurile din tabelul din partea stângă și rândurile corespunzătoare din partea dreaptă a îmbinării. În cazul în care nu există laturi care să se potrivească pe partea dreaptă, rezultatul este nul.

Deci, dacă ar fi să unim două tabele, A și B, SQL Left Outer Join ar returna toate rândurile din tabelul din stânga, care este A, și toate rândurile care se potrivesc în celălalt tabel B din partea dreaptă. Pe scurt, rezultatul SQL Left Join constă întotdeauna din rândurile din tabelul din stânga.

Diferența dintre Join și Left Join

Pentru noțiuni de bază, Join se mai numește și Inner Join, în timp ce Left Join este un Outer Join.

Dar principala diferență este că o instrucțiune de tip left join este susceptibilă să includă și să combine toate rândurile din tabelul la care se face referire în partea stângă a informațiilor. În loc de doar rândurile nepotrivite, aceasta constă din toate rândurile din tabelul din stânga și din rândurile potrivite din celelalte tabele.

Când să utilizați Left Outer Join în SQL?

Să presupunem că sunteți în căutarea unei modalități de a combina diferite tabele. Sau, dacă alăturați două tabele și doriți ca setul de rezultate să includă doar rândurile nepotrivite ale unei singure tabele, ar trebui să utilizați o clauză de alăturare exterioară stângă sau o clauză de alăturare exterioară corectă. Utilizarea alăturării exterioare stângi constă în rândurile care nu se potrivesc din tabelul specificat înainte de clauza de alăturare exterioară stângă.

Din punct de vedere tehnic, îmbinarea exterioară stângă identifică toate rândurile din ambele tabele care îndeplinesc condiția de îmbinare și rândurile nepotrivite din tabel.

Se mărește numărul de rânduri prin alăturarea exterioară stângă?

Aceasta este o întrebare frecventă. Din punct de vedere tehnic, este un da.

Cu toate acestea, Left Join poate doar crește numărul de rânduri din tabelul din stânga. Și asta numai atunci când în tabelul din dreapta se găsesc mai multe corespondențe. În plus, puteți utiliza mai multe îmbinări stânga într-o singură interogare, dacă este necesar pentru analiza dvs.

Left Outer Join vs. Right Outer Join

Diferența semnificativă între Left Outer Join și Right Outer Join este următoarea combinarea rândurilor nepotrivite.

Astfel, diferența dintre cele două este aceea că îmbinarea exterioară din stânga include rândurile nepotrivite sau toate înregistrările din tabelul din stânga clauzei de îmbinare, inclusiv rândurile potrivite din tabelul sau clauza din dreapta.

Pe de altă parte, o îmbinare exterioară dreaptă include rândurile nepotrivite din tabelul din partea dreaptă a clauzei de îmbinare și returnează toate rândurile din partea dreaptă.

O clauză de asociere combină înregistrări sau modifică și manipulează formulare din două sau mai multe tabele folosind o condiție de asociere. Această condiție de asociere indică modul în care coloanele din tabelele diferite se potrivesc atunci când sunt comparate.

De exemplu, va exista o coloană standard între un tabel care conține salariul unui angajat și un alt tabel care conține detaliile angajatului. Aceasta ar putea fi ID-ul angajatului, iar acest lucru ajută la unirea celor două tabele.

Astfel, vă puteți gândi la tabel ca la o entitate, iar cheia este o legătură comună între cele două tabele, care este utilizată pentru o operațiune comună.

Studierea Bazelor de date poate fi complicată. Dar este destul de simplu de obținut dacă o înțelegi bine.

Care este diferența dintre Right Join și Right Outer Join?

Îmbinările din dreapta sunt similare cu cele din stânga, cu excepția faptului că returnează toate rândurile din tabel din partea dreaptă și rândurile corespunzătoare din partea stângă.

Din nou, Right Join și Right Outer Join nu au nicio diferență specifică, la fel cum nu au nici Left Join și Left Outer Join. Pe scurt, termenul Right Join este pur și simplu o prescurtare pentru Right Outer Join.

Cuvântul cheie "outer" este opțional. Ambele îndeplinesc aceeași sarcină, combinând seturile de date și tabelele.

De ce să folosiți Right Join în loc de Left Join?

În general, îmbinările exterioare drepte nu sunt utilizate atât de des, deoarece le puteți înlocui oricând cu îmbinări exterioare stângi și nu va trebui să efectuați nicio funcție suplimentară.

În cazul în care încercați să faceți ca SQL-ul dumneavoastră să fie mai bine documentat, ar trebui să folosiți Right Join mai degrabă decât Left Join.

S-ar putea să folosiți Alăturare stânga pentru a aborda interogările care au rânduri nule în partea dependentă. Ar trebui să utilizați Dreptul de a se alătura pentru întrebările care generează rânduri nule pe partea independentă.

The Îmbinare exterioară dreaptă este, de asemenea, utilă atunci când trebuie să combinați un tabel cu intersecția mai multor alte tabele.

Vezi si: Cocorii vs. Heronii vs. Berzele (comparație) - Toate diferențele

Diferența dintre Join și Union în SQL

Diferența dintre Join și Union constă în faptul că Union este utilizat pentru a combina setul de rezultate a două sau mai multe instrucțiuni SELECT.

În timp ce Join combină date din mai multe tabele în funcție de condiția de potrivire, datele combinate cu ajutorul instrucțiunilor Join dau naștere la noi coloane.

Datele combinate cu ajutorul instrucțiunii Union au ca rezultat noi rânduri distincte din seturile cu un număr egal de coloane.

Gânduri finale

În concluzie, există nicio diferență între LEFT JOIN și LEFT OUTER JOIN Acest lucru este valabil și pentru Right Join și Right Outer Join.

Ambele taste îndeplinesc aceleași funcții, iar " outer" este doar un cuvânt cheie opțional care poate fi utilizat. Unele persoane recomandă utilizarea acestuia doar pentru că clarifică faptul că se creează o îmbinare exterioară.

Așadar, în cele din urmă, faptul că o specificați sau nu, nu are nicio importanță.

Alte articole interesante:

    Faceți clic aici pentru a afla mai multe despre aceste diferențe într-o manieră mai sumară.

    Mary Davis

    Mary Davis este scriitoare, creatoare de conținut și cercetătoare pasionată specializată în analiza comparativă pe diverse subiecte. Cu o diplomă în jurnalism și peste cinci ani de experiență în domeniu, Mary are o pasiune pentru a oferi cititorilor săi informații imparțiale și directe. Dragostea ei pentru scris a început când era tânără și a fost o forță motrice în spatele carierei sale de succes în scris. Capacitatea lui Mary de a cerceta și de a prezenta descoperirile într-un format ușor de înțeles și captivant a făcut-o îndrăgită de cititorii din întreaga lume. Când nu scrie, Mary îi place să călătorească, să citească și să petreacă timp cu familia și prietenii.