Rozdíl mezi vnitřním a vnějším připojením v SQL

Autor: Laura McKinney
Datum Vytvoření: 2 Duben 2021
Datum Aktualizace: 12 Smět 2024
Anonim
Rozdíl mezi vnitřním a vnějším připojením v SQL - Technologie
Rozdíl mezi vnitřním a vnějším připojením v SQL - Technologie

Obsah


Vnitřní připojení a vnější připojení jsou oba typy připojení. Připojit porovnává a kombinuje n-tice ze dvou vztahů nebo tabulek. Vnitřní spojení určuje přirozené spojení, tj. Pokud napíšete klauzuli spojení bez klíčového slova Vnitřní, provede operaci přirozeného spojení. Potenciální rozdíl mezi vnitřním připojením a vnějším připojením je takový Vnitřní spojení vrací pouze odpovídající n-tice z tabulky i Vnější připojení vrátí všechny n-tice z obou porovnávaných tabulek. Pojďme diskutovat o některých dalších rozdílech mezi vnitřním spojením a vnějším spojením pomocí níže uvedené srovnávací tabulky.

  1. Srovnávací tabulka
  2. Definice
  3. Klíčové rozdíly
  4. Závěr

Srovnávací tabulka

Základ pro srovnáníVnitřní spojeníVnější připojení
ZákladníVnitřní spojení vydává pouze shodné n-tice z obou tabulek.Program Outer Join (Zobrazit vnější spojení) zobrazí všechny n-tice z obou tabulek.
DatabázePotenciální velikost databáze vrácené Inner Join je poměrně menší než Outer Join.Vnější spojení vrátí poměrně větší databázi.
TypyŽádné typy.Left Outer Join,
Right Outer Připojte se,
a plné vnější připojení.


Definice vnitřního spojení

Vnitřní spojení se také označuje jako přirozené spojení. Inner Join porovnává dvě tabulky a kombinuje párování v obou tabulkách. Nazývá se také jako výchozí typ spojení, protože klauzule Join je napsána bez vnitřního klíčového slova, které provádí přirozené spojení. Pokud je klauzule Join napsána bez klíčového slova Outer, provede se také vnitřní spojení.

Vnitřní spojení lze vysvětlit na příkladu. Existují dvě tabulky studentský stůl a stůl oddělení. Nyní nám umožní pochopit, co dělá vnitřní spojení.

VYBRAJTE Jméno, Sem, Department_name OD Student INNER JOIN Department ON Student.Department_ID = Department.ID.


Uvidíte, že ve výsledném výsledku jsou získány pouze ty n-tice, kde Student.Department_ID = Department.ID. Můžeme tedy říci, že Inner Join kombinuje pouze odpovídající tupl ze dvou tabulek.

Definice vnějšího spojení

Na rozdíl od Inner Join jsou výstupem pouze ty n-tice, které mají stejné hodnoty atributů v obou srovnávaných tabulkách; Outer Join spojí všechny n-tice obou tabulek. Vnější připojení je tří typů Levé vnější připojení, Right Outer Join, a Plné vnější připojení.

Pojďme jim rozumět jeden po druhém. Nejprve si vezměte Left Outer Join.

Vyberte jméno, jméno_oddělení ze studenta vlevo z vnějšího spojení. Oddělení zapnuto Student.Department_ID = Depoartment.ID.

Můžete vidět, že ve výsledku jsou zobrazeny všechny n-tice ze studentské tabulky.

Vyberte Jméno, Název_oddělení z Oddělení vpravo Vnější Připojte se k studentovi ON Student.Department_ID = Depoartment.ID.

Vidíte, že jsou zobrazeny všechny n-tice z tabulky oddělení.

Vyberte jméno, jméno_oddělení ze studenta z celého vnějšího spojení. Oddělení ZAPNUTO Student.Department_ID = Depoartment.ID.

Můžete si všimnout, že ve výsledku jsou zobrazeny všechny n-tice z obou tabulek.

  1. Základní rozdíl mezi vnitřním spojením a vnějším spojením spočívá v tom, že vnitřní spojení porovnává a kombinuje pouze odpovídající tuples z obou tabulek. Na druhé straně Outer Join porovnává a kombinuje všechny n-tice z obou srovnávaných tabulek.
  2. Velikost databáze výsledné získané z Inner Join je menší než Outer Join.
  3. Existují tři typy připojení vnějšího spojení vnějšího připojení, pravého vnějšího připojení a úplného vnějšího připojení. Ale vnitřní spojení nemá takové typy.

Závěr:

Oba spojenci jsou velmi užiteční. Jejich použití závisí na požadavcích uživatele.