Rozdiel medzi vnútorným a prirodzeným spojením

kľúčový rozdiel medzi vnútorným a prirodzeným spojením je to Vnútorné spojenie poskytuje výsledok na základe zhodných údajov podľa podmienky rovnosti špecifikovanej v dotaze, zatiaľ čo funkcia Natural join poskytuje výsledok na základe stĺpca s rovnakým menom a rovnakým typom údajov, ktorý je uvedený v tabuľkách, ktoré sa majú spojiť..

DBMS umožňuje jednoduché ukladanie, získavanie a manipuláciu s dátami. Ukladá údaje vo forme tabuliek. Každá tabuľka sa skladá z riadkov a stĺpcov. Riadky predstavujú každú entitu, zatiaľ čo stĺpce predstavujú atribúty. Predpokladajme databázu študentov. Každý riadok predstavuje študenta. Stĺpce predstavujú atribúty ako id, meno, známka, vek. DBMS je zbierka tabuliek a každá tabuľka je spojená pomocou obmedzení, ako sú cudzie kľúče. Niekedy nestačí použiť jednu tabuľku. Existujú situácie, ktoré vyžadujú použitie viacerých tabuliek. Na spojenie dvoch tabuliek by mal byť spoločný aspoň jeden stĺpec. Kombinácia tabuliek sa nazýva join.

OBSAH

1. Prehľad a kľúčový rozdiel
2. Čo je to vnútorné spojenie
3. Čo je to prirodzené spojenie
4. Vzťah medzi vnútorným a prirodzeným spojením
5. Porovnanie bok po boku - vnútorné spojenie vs prirodzené spojenie v tabuľkovej forme
6. Zhrnutie

Čo je to vnútorné spojenie?

Príklad vnútorného spojenia je nasledujúci. Nižšie je tabuľka pre študentov.

Tabuľka student_info je nasledovná.

Na vykonanie vnútorného spojenia by mala existovať aspoň jedna zhoda medzi oboma tabuľkami. Id 1,2,3 sú spoločné pre obe tabuľky. Preto je možné vykonať vnútorné spojenie.

Obrázok 01: Pripojenie SQL

Dopyt INNER JOIN na pripojenie k týmto dvom tabuľkám je nasledujúci.

VYBERTE * od študenta

INNER JOIN student_info WHERE student.id = student_info.id;

Vykonaním vyššie uvedeného príkazu SQL sa vygeneruje nasledujúca tabuľka.

Čo je to prirodzené spojenie?

Príklad prirodzeného spojenia je nasledujúci. Nižšie je tabuľka pre študentov.

Tabuľka student_info je nasledovná.

Na vykonanie prirodzeného spojenia by mal existovať stĺpec s rovnakým názvom a rovnakým typom údajov. Stĺpec id je rovnaký pre obe tabuľky. Preto je možné obidve tabuľky prirodzene spojiť.

Dotaz NATURAL JOIN na pripojenie týchto dvoch tabuliek je nasledujúci.

SELECT * od študenta NATURAL JOIN student_info;

Vykonaním vyššie uvedeného príkazu SQL sa vygeneruje nasledujúca tabuľka.

Aký je vzťah medzi vnútorným spojením a prirodzeným spojením?

  • Prírodné pripojenie je typom vnútorného spojenia.

Aký je rozdiel medzi vnútorným a prirodzeným spojením?

Vnútorné spojenie poskytuje výsledok na základe zhodných údajov podľa podmienky rovnosti špecifikovanej v dotaze, zatiaľ čo prirodzené spojenie poskytuje výsledok na základe stĺpca s rovnakým názvom a rovnakým typom údajov, ktorý je prítomný v tabuľkách, ktoré sa majú spojiť. Syntax vnútorného spojenia a prirodzeného spojenia sa navyše líši.

Ak tabuľka 1 pozostáva z id, mena a tabuľky 2 z id a mesto, potom vnútorné spojenie poskytne výslednú tabuľku so zodpovedajúcimi riadkami. Bude mať ID, meno, opäť ID a mesto. Na druhú stranu, v prirodzenom spojení, dá výslednú tabuľku so zodpovedajúcimi riadkami so stĺpcami id, name, city.

 

Zhrnutie - Inner Join vs Natural Join

Kľúčový rozdiel medzi vnútorným spojením a prirodzeným spojením spočíva v tom, že vnútorný spoj poskytuje výsledok založený na zhodných údajoch podľa podmienky rovnosti špecifikovanej v dotaze SQL, zatiaľ čo prírodný spoj poskytuje výsledok založený na stĺpci s rovnakým menom a rovnakým prítomným typom údajov. v tabuľkách, ktoré sa majú spojiť.

referencie:

1. Príručky Bod. „SQL INNER JOINS.“ Výukové programy Point, 8. januára 2018. K dispozícii tu

S láskavým dovolením:

1.'SQL Join - 07 A Inner Join B'By GermanX - Vlastné dielo, (CC BY-SA 4.0) cez Commons Wikimedia