Priporočena, 2024

Izbira Urednika

Razlika med notranjo in zunanjo povezavo v SQL

Inner Join in Outer Pridružite se obema vrstama Join. Združi primerja in kombinira torke iz dveh relacij ali tabel. Inner Join določa naravno pridružitev, tj. Če pišete klavzulo Join brez ključne besede Inner, potem izvede operacijo naravnega združevanja. Potencialna razlika med notranjo povezavo in zunanjim pridruževanjem je, da notranja pridružitev vrne samo ujemajoče nožice iz tabele in zunanja povezava vrne vse zapise iz obeh primerjanih tabel. Dovolite nam, da razpravljamo o nekaterih drugih razlikah med notranjo povezavo in zunanjo povezavo s pomočjo primerjalne tabele, prikazane spodaj.

Primerjalna tabela

Podlaga za primerjavoInner JoinOuter Join
OsnovnoInner Join izide samo ujemajoče nožice iz obeh tabel.Outer Join prikaže vse torke iz obeh tabel.
Baza podatkovVelikost potenciala baze podatkov, ki jo vrne Inner Join, je relativno manjša od Outer Join.Zunanja povezava vrne relativno večjo bazo podatkov.
VrsteNi tipov.Leva zunanja povezava,
Desna zunanja povezava,
in Full Outer Join.

Opredelitev Inner Join

Inner Join se imenuje tudi Natural Join. Notranja združitev primerja dve tabeli in združi ujemajočo točko v obeh tabelah. Imenuje se tudi kot privzeti tip pridružitve, ker je člen Join brez notranje ključne besede, ki jo izvede. Če je člen Join napisan brez ključne besede Outer, se izvede tudi notranje povezovanje.

Inner Join lahko razložite s primerom. Obstajata dve tabeli učenčeve mize in tabela oddelkov. Zdaj nam omogoča, da razumemo, kaj počne notranja pridružitev.

SELECT Name, Sem, Deparment_name FROM Študent INNER JOIN Oddelek ON Student.Department_ID = Department.ID.

Vidite lahko, da so v tem primeru pridobljeni samo tuple, kjer je Student.Department_ID = Department.ID. Zato lahko rečemo, da Inner Join združuje le ujemajoči se dvojnik tabele.

Opredelitev Outer Join

Za razliko od Inner Join, so samo tuple izhodi, ki imajo enake vrednosti atributov v obeh primerjanih tabelah; Outer Join (Izhodni priključek) prikaže vse zapise obeh tabel. Zunanja povezava je sestavljena iz treh tipov: Leva zunanja povezava, desna zunanja povezava in polna zunanja povezava .

Naj jih razumemo enega po enega. Najprej vzemimo levo Outer Join.

Izberi ime, Ime oddelka Iz oddelka za levo povezavo učenca na zunanji strani. Student.Department_ID = Depoartment.ID.

Vidite lahko, da so v rezultatu prikazane vse torke iz učne tabele.

Izberi Ime, Ime oddelka Iz oddelka Desno Zunanje Pridruži se učencu Študent.Department_ID = Depoartment.ID.

Vidite lahko, da so prikazane vse torke iz tabele Department.

Izberi Ime, Ime oddelka Iz oddelka za povezovanje študentov s polnim zunanjim delovnim mestom na strani Student.Department_ID = Depoartment.ID.

Opazite lahko, da so v rezultatu prikazane vse torke iz obeh tabel.

Ključne razlike med notranjo povezavo in zunanjo povezavo

  1. Osnovna razlika med notranjo povezavo in zunanjo pridružitvijo je, da se notranja povezava primerja in združi le ujemajoče tuple iz bothe tabel. Na drugi strani pa se Zunanja povezava primerja in združi vse torke iz obeh primerjanih tabel.
  2. Velikost baze podatkov, ki jo dobite iz notranjega priključka, je manjša kot zunanja povezava.
  3. Obstajajo tri vrste Outer Join Leave Outer Join, Righ Outer Join in Full Outer Join. Toda notranja Join nima takšnih tipov.

Sklep:

Oba združenja sta zelo koristna. Uporaba je odvisna od zahteve uporabnika.

Top