Forskjellen mellom Inner Join og Outer Join i SQL

Forfatter: Laura McKinney
Opprettelsesdato: 2 April 2021
Oppdater Dato: 12 Kan 2024
Anonim
Forskjellen mellom Inner Join og Outer Join i SQL - Teknologi
Forskjellen mellom Inner Join og Outer Join i SQL - Teknologi

Innhold


Inner Join og Outer Join er begge typene av Join. Bli sammen med og kombinerer tupler fra to forhold eller tabeller. Inner Join spesifiserer naturlig join, dvs. hvis du skriver en Join-klausul uten indre søkeord, utfører den den naturlige join-operasjonen. Potensialforskjellen mellom Inner Join og Outer Join er den Indre med returnerer bare de matchende tuplene fra både bordet og Ytre bli med returnerer alle tuplene fra begge tabellene sammenlignet. La oss diskutere noen andre forskjeller mellom Inner Join og Outer Join med hjelp av sammenligningstabellen nedenfor.

  1. Sammenligningstabell
  2. Definisjon
  3. Viktige forskjeller
  4. Konklusjon

Sammenligningstabell

Grunnlag for sammenligningIndre medYtre bli med
grunn~~POS=TRUNCInner Join gir bare de matchende tuplene fra begge bordene.Outer Join viser alle tuplene fra begge bordene.
databasePotensialstørrelsen på databasen som returneres av Inner Join er relativt mindre enn Outer Join.Ytre join returnerer relativt større database.
typerIngen typer.Left Yuter Join,
Right Yuter Join,
og Full Ytre Join.


Definisjon av Inner Join

Inner Join omtales også som Natural Join. Inner Join sammenligner to tabeller og kombinerer den matchende tupelen i begge tabellene. Det kalles også som standard sammenføyningstype, da Join-ledd er skrevet uten det indre nøkkelordet det utfører den naturlige sammenføyningen. Hvis medbestemmelsen er skrevet uten ytre nøkkelord, utføres også indre sammenføyning.

Inner Join kan forklares med et eksempel. Det er to bord studentbord og avdelingsbord. La oss nå forstå hva utfører inner Join.

VELG Navn, Sem, Avdelingsnavn FRA Student INNER JOIN Avdeling PÅ Student.Department_ID = Avdeling.ID.


Du kan se at bare de tuplene oppnås i det resulterende der Student.Department_ID = Department.ID. Derfor kan vi si at Inner Join bare kombinerer den matchende tupelen til to bord.

Definisjon av Outer Join

I motsetning til i Inner Join, er det bare tuppene som har samme attributtverdier i begge tabellene sammenlignet. Outer Join gir alle tabellene på begge bordene. Outer Join er av tre typer Left Yuter Join, Right Ytre Join, og Full Ytre Join.

La oss forstå dem en etter en. La oss først ta Left Outer Join.

Velg Navn, Avdelingsnavn Fra Student Venstre Ytre Bli med avdeling PÅ Student.Department_ID = Depoartment.ID.

Du kan se at alle tuplene fra Studenttabellen vises i resultatet.

Velg Navn, avdelingsnavn Fra avdeling Høyre Ytre Bli med student PÅ Student.Department_ID = Depoartment.ID.

Du kan se at alle tuplene fra avdelingstabellen vises.

Velg Navn, Avdelingsnavn Fra Student Full Ytre Join Department ON Student.Department_ID = Depoartment.ID.

Du kan se at alle tuplene fra begge tabellene vises i resultatet.

  1. Den grunnleggende forskjellen mellom innerforbindelsen og ytre skjøting er at indre skjøter sammenligner og kombinerer bare de matchende tuplene fra bordene. På den annen side sammenligner Outer Join og kombinerer alle tuplene fra begge bordene som blir sammenlignet.
  2. Databasestørrelsen til resultanten oppnådd fra Inner Join er mindre enn Outer Join.
  3. Det er tre typer Outer Join Left Outer Join, Right Outer Join og Full Outer Join. Men indre Join har ingen slike typer.

Konklusjon:

Begge sammenføyningene er veldig nyttige. Bruk avhenger av kravet fra brukeren.