SQL OUTER JOINs O prezentare generală a tuturor tipurilor - IONOS
La o SQL JOIN este o operațiune de interogare care leagă mai multe tabele ale unei baze de date relaționale și scoate înregistrările lor de date (tupluri) filtrate în funcție de o condiție de selecție definită de utilizator.

- Subspecii ale OUTER JOIN
- SQL LEFT OUTER JOIN
- SQL RIGHT OUTER JOIN
- SQL FULL OUTER JOIN
- NATURAL OUTER JOIN
- OUTER JOINs în practică
Cel mai comun tip JOIN al modelului bazei de date relaționale este SQL INNER JOIN. În practică, de exemplu, utilizatorii folosesc INNER JOIN-uri atunci când două tabele de baze de date urmează să fie legate folosind aceleași coloane. Fiecare înregistrare de date dintr-un tabel este îmbinată cu o înregistrare de date corespunzătoare din celălalt tabel. Înregistrările de date pentru care sistemul de gestionare a bazelor de date (SGBD) nu găsește o potrivire în celălalt tabel sunt ascunse.
A SQL EXTER JOIN cu toate acestea, nu numai rezultatele înregistrărilor de date din ambele tabele care îndeplinesc condiția de selecție (de exemplu, egalitatea valorilor din două coloane), ci și toate celelalte tupluri ale uneia sau celeilalte tabele.
În raport cu direcția de citire a sintaxei SQL, se vorbește despre un tabel din stânga și din dreapta. Operațiunile respective sunt denumite în mod corespunzător ÎNREGISTRARE ÎN EXTERIOR și ÎNREGISTRAȚI-VĂ ÎN DREAPTA. Dacă doriți să scoateți toate înregistrările de date în tabelele din stânga și din dreapta, în plus față de înregistrările de date care îndeplinesc condiția de selecție în contextul interogărilor de baze de date, aceasta este una ÎNREGISTRARE COMPLETĂ.
Principiul diferitelor tipuri de JOIN poate fi ilustrat foarte bine folosind diagrame de set:
Reprezentarea INNER JOIN și OUTER JOIN sub formă de diagrame de seturi: Zonele colorate corespund setului de rezultate al respectivului JOIN al mulțimilor A și B. Setul de rezultate al JOINERII INTERNE este intersecția lui A și B (albastru închis). Setul de rezultate al UNEI EXTERNE include intersecțiile dintre A și B (albastru închis), precum și cantitatea rămasă (albastru deschis) de A (ÎNREGISTRARE STÂNGA), B (ÎNREGISTRARE DREAPTA) sau A și B (ÎNREGISTRARE COMPLETĂ).
Subspecii ale OUTER JOIN
Fiecare OUTER JOIN este implementat ca un JOIN OUTER JOIN, RIGHT OUTER JOIN sau FULL OUTER JOIN.
Cuvântul cheie OUTER este opțional în sintaxa SQL. De regulă, utilizatorii folosesc notația prescurtată LEFT JOIN, RIGHT JOIN și FULL JOIN.
Ilustrăm cum funcționează OUTER JOIN-urile folosind tabelele bazei de date „angajați” și „kfz”.
Tabel: angajați
| 1 | Schmidt | Tu faci | 3 |
| 2 | Müller | lupgang | 1 |
| 3 | Meyer | Günther | 1 |
| Al 4-lea | Krause | Helmut | 2 |
| 5 | Pescar | Hugo | ZERO |
Tabelul „angajați” include numele și prenumele angajaților unei companii fictive, precum și ID-ul mașinii companiei atribuite (kfz_id). Cheia principală a tabelului este un ID de angajat consistent (m_id). Nicio mașină de companie nu a fost atribuită angajatului cu ID 5 (Hugo Fischer). Prin urmare, celula coloanei corespunzătoare conține una Valoare zero.
Valoarea nulă NULL este o valoare care reprezintă absența unei valori. Nu corespunde valorii numerice 0.