Diferența dintre Alăturarea interioară și Alăturarea externă în SQL

Autor: Laura McKinney
Data Creației: 2 Aprilie 2021
Data Actualizării: 12 Mai 2024
Anonim
Diferența dintre Alăturarea interioară și Alăturarea externă în SQL - Tehnologie
Diferența dintre Alăturarea interioară și Alăturarea externă în SQL - Tehnologie

Conţinut


Unirea interioară și Alătura exterioară sunt ambele tipuri de unire. Alăturați comparați și combinați tupluri din două relații sau tabele. Inner Join specifică alăturarea naturală, adică dacă scrieți o clauză Join fără un cuvânt cheie interior, aceasta efectuează operațiunea naturală de alăturare. Diferența de potențial dintre Alăturarea interioară și Alătura exterioară este aceea Alăturați-vă la interior returnează numai tuplurile potrivite atât din tabel cât și din Alăturați-vă returnează toate tuplurile din ambele tabele comparate. Haideți să discutăm alte diferențe între unirea interioară și unirea exterioară cu ajutorul graficului de comparație prezentat mai jos.

  1. Diagramă de comparație
  2. Definiție
  3. Diferențele cheie
  4. Concluzie

Diagramă de comparație

Baza pentru comparațieAlăturați-vă la interiorAlăturați-vă
De bazăInner Join produce numai tuplurile potrivite din ambele tabele.Outer Join afișează toate tuplurile din ambele tabele.
Bază de dateMărimea potențială a bazei de date returnată de unirea interioară este comparativ mai mică decât Alătura exterioară.Alătura exterioară returnează o bază de date relativ mai mare.
TipuriFără tipuri.Alăturați-vă la stânga,
Alăturați-vă dreapta,
și unire completă exterioară.


Definiția Inner Join

Alătura interioară este de asemenea denumită Alăturare naturală. Inner Join compară două tabele și combină tuple-ul corespunzător în ambele tabele. Este, de asemenea, numit ca tip implicit de alăturare, deoarece clauza Join este scrisă fără cuvântul cheie interioară pe care o realizează unirea naturală. Dacă clauza Join este scrisă fără un cuvânt cheie Outer, atunci se execută și unirea interioară.

Alăturarea interioară poate fi explicată cu un exemplu. Există două tabele de masă pentru studenți și masa de departament. Acum ne permite să înțelegem ce face unirea interioară.

SELECT Nume, Sem, Deparment_name DE LA Student INNER JOIN Departamentul ON Student.Department_ID = Department.ID.


Puteți vedea că numai acele tupluri sunt obținute în rezultatul în care Student.Department_ID = Department.ID. Prin urmare, putem spune că unirea interioară combină doar tupla potrivită a două tabele.

Definiția Outer Join

Spre deosebire de Inner Join, numai acele tuple sunt rezultate care au aceleași valori de atribut atât în ​​tabelul comparat; Outer Join scoate toate tuplurile ambelor tabele. Alătura exterioară este de trei tipuri Alăturați-vă stânga, Alătură-te dreapta, și Alătură-te completă.

Să le înțelegem unul câte unul. În primul rând, să luăm Adăugarea stângă.

Selectați numele, Departamentul_numele din Studențul Stânga Exterior Alăturați-vă departamentului ON Student.Department_ID = Depoartment.ID.

Puteți vedea că toate rezultatele din tabelul studenților sunt afișate în rezultat.

Selectați numele, numele_departenței din departamentul din dreapta dreapta Alăturați-vă studentului pe Student.Departament_ID = Depoartment.ID.

Puteți vedea că sunt afișate toate tuplurile din tabelul Departamentului.

Selectați numele, Departamentul_numele din studentul Exterior complet Alăturați-vă departamentului ON Student.Department_ID = Depoartment.ID.

Puteți observa că toate rezultatele din ambele tabele sunt afișate în rezultat.

  1. Diferența de bază dintre Alătura interioară și Alătura exterioară este aceea că îmbinarea interioară se compară și combină doar tuplurile potrivite din tabele. Pe de altă parte, unirea exterioară compară și combină toate tuplurile din ambele tabele comparate.
  2. Mărimea bazei de date a rezultatului obținut din Alăturarea internă este mai mică decât Alătura exterioară.
  3. Există trei tipuri de unire exterioară Alătura exterioară stângă, Alătura exterioară dreaptă și Alătură exterioară completă. Dar Alătura interioară nu are astfel de tipuri.

Concluzie:

Ambele uniri sunt foarte utile. Utilizarea lor depinde de cerința utilizatorului.