Atšķirība starp iekšējo un ārējo pievienošanos SQL

Autors: Laura McKinney
Radīšanas Datums: 2 Aprīlis 2021
Atjaunināšanas Datums: 12 Maijs 2024
Anonim
Section 8
Video: Section 8

Saturs


Iekšējā un ārējā pievienošanās ir abas. Pievienojies salīdzina un apvieno divu attiecību vai tabulu kopsavilkumus. Iekšējā pievienošanās norāda dabisko pievienošanos, t.i., ja jūs rakstāt pievienošanās klauzulu bez iekšējā atslēgvārda, tad tā veic dabisko pievienošanās darbību. Potenciālā atšķirība starp iekšējo pievienošanos un ārējo pievienošanos ir tāda Iekšējais pievienošanās atgriež tikai atbilstošos tabulus gan no tabulas, gan tabulas Ārējais pievienoties atgriež visus salīdzinājumus no abām salīdzinātajām tabulām. Izmantojot zemāk parādīto salīdzināšanas diagrammu, apspriedīsim dažas citas atšķirības starp iekšējo pievienošanos un ārējo pievienošanos.

  1. Salīdzināšanas tabula
  2. Definīcija
  3. Galvenās atšķirības
  4. Secinājums

Salīdzināšanas tabula

Salīdzināšanas pamatsIekšējais pievienošanāsĀrējais pievienoties
PamataIekšējā pievienošanās izvada tikai atbilstošos saīsinājumus no abām tabulām.Outer Join parāda visus tabulas veidnes.
Datu bāzeInner Join atgrieztais datu bāzes potenciālais lielums ir salīdzinoši mazāks nekā Outer Join.Ārējā pievienošanās atdod salīdzinoši lielāku datu bāzi.
VeidiNav tipu.Kreisais ārējais pievienoties,
Labais ārējais savienojums,
un Pilns ārējais pievienošanās.


Iekšējās pievienošanās definīcija

Iekšējo pievienošanos sauc arī par dabisko pievienošanos. Inner Join salīdzina divas tabulas un abās tabulās apvieno atbilstošo tekstu. To sauc arī par noklusējuma pievienošanās veidu, jo pievienošanās klauzula tiek rakstīta bez iekšējā atslēgvārda, kas veic dabisko pievienošanos. Ja pievienošanās klauzula ir uzrakstīta bez ārējā atslēgvārda, tad tiek veikta arī iekšējā pievienošanās.

Iekšējo pievienošanos var izskaidrot ar piemēru. Ir divi galdi studentu galds un katedru galds. Tagad ļauj mums saprast, ko veic iekšējais Join.

SELECT Vārds, Sem, Deparment_name no studenta INNER JOIN departamenta studentu.Departamenta_ID = departamenta.ID.


Var redzēt, ka rezultātos, kur Student.Department_ID = Department.ID tiek iegūti tikai šie sīki. Līdz ar to mēs varam teikt, ka Inner Join apvieno tikai divu tabulu atbilstošo kopu.

Ārējā pievienošanās definīcija

Atšķirībā no iekšējā savienojuma, tiek izvadīti tikai tie sīktēli, kuriem abās salīdzinātajās tabulās ir vienādas atribūtu vērtības; Outer Join tiek izvadīti visi abu tabulu tipi. Ārējā pievienošanās ir trīs veidu Kreisais ārējais savienojums, Labais ārējais pievienošanās, un Pilns ārējais pievienošanās.

Ļaujiet mums saprast tos pa vienam. Pirmkārt, pieņemsim ārējo kreiso pievienošanos.

Atlasiet Vārds, Nodaļas nosaukums no Studenta kreisā Ārējā Pievienojieties nodaļai ON Student.Department_ID = Depoartment.ID.

Var redzēt, ka rezultātos tiek parādīti visi Studentu tabulas noformējumi.

Atlasiet Vārds, Nodaļas nosaukums No Departamenta Labajā Ārpus Pievienojieties Studentam ON Student.Department_ID = Depoartment.ID.

Var redzēt, ka tiek parādīti visi departamenta tabulas noformējumi.

Atlasiet Vārds, Departamenta_nosaukums No Studenta Pilna ārējā. Pievienojieties nodaļai ON Student.Department_ID = Depoartment.ID.

Var novērot, ka rezultātos tiek parādīti visi tabulas.

  1. Galvenā atšķirība starp iekšējo savienojumu un ārējo savienojumu ir tāda, ka iekšējais savienojums salīdzina un apvieno tikai tabulās esošos atbilstošos nosaukumus. No otras puses, Outer Join salīdzina un apvieno visus tabulus no abām salīdzināmajām tabulām.
  2. Rezultāta, kas iegūts no iekšējā savienojuma, datu bāzes lielums ir mazāks nekā ārējam savienojumam.
  3. Ir trīs veidu ārējais savienojums: kreisais ārējais savienojums, taisnais ārējais savienojums un pilnīgais ārējais savienojums. Bet iekšējai Join nav šādu veidu.

Secinājums:

Abi savienojumi ir ļoti noderīgi. To izmantošana ir atkarīga no lietotāja prasībām.