Rozdiel medzi JOIN a UNION v SQL

Autor: Laura McKinney
Dátum Stvorenia: 2 Apríl 2021
Dátum Aktualizácie: 5 Smieť 2024
Anonim
Difference between Natural Join And Inner Join In SQL | Which is better? Examples
Video: Difference between Natural Join And Inner Join In SQL | Which is better? Examples

Obsah


JOIN a UNION sú klauzuly v SQL, ktoré sa používajú na kombináciu údajov dvoch alebo viacerých vzťahov. Spôsob, akým kombinujú údaje a formát získaného výsledku, sa však líši. JOIN klauzula kombinuje atribúty dvoch vzťahov a vytvára výsledné n-tice, zatiaľ čo, UNION Klauzula kombinuje výsledok dvoch dopytov. Poďme diskutovať o rozdieloch medzi JOIN a UNION pomocou porovnávacej tabuľky uvedenej nižšie.

  1. Porovnávacia tabuľka
  2. definícia
  3. Kľúčové rozdiely
  4. záver

Porovnávacia tabuľka

Základ pre porovnanieJOINUNION
základnéJOIN kombinuje atribúty n-tíc prítomných v dvoch rôznych vzťahoch, ktoré zdieľajú niektoré spoločné polia alebo atribúty.UNION kombinuje n-tiny vzťahov, ktoré sú prítomné v dotaze.
podmienkaJOIN je uplatniteľný, ak majú oba zúčastnené vzťahy aspoň jeden spoločný atribút.ÚNIA je použiteľná, keď je počet stĺpcov prítomných v dotaze rovnaký a príslušné atribúty majú rovnakú doménu.
druhyVNÚTORNÁ, PLNÁ (VONKAJŠIA), ĽAVÁ PRIPOJENIE, PRAVÁ PRIPOJENIEÚNIA A ÚNIA VŠETKY.
účinokDĺžka výsledných n-tíc je viac v porovnaní s dĺžkou n-tiek zúčastnených vzťahov.Počet výsledných n-tíc je väčší v porovnaní s počtom n-tíc prítomných v každej relácii zahrnutej v dotaze.
diagram



Vymedzenie pojmu JOIN

JOIN Klauzula v SQL kombinuje n-tice z dvoch vzťahov alebo tabuliek, čo vedie k dlhšej veľkosti n-tice. Výsledná n-tica obsahuje atribúty z oboch vzťahov. Atribúty sa kombinujú na základe spoločných atribútov medzi nimi. Rôzne typy JOIN v SQL sú VNÚTORNÝ PRIPOJENÝ, ĽAVÝ PRIPOJENÝ, PRAVÝ PRIPOJENÝ, PLNÝ VONKAJŠÍ VÝSTUP.

VNÚTORNÝ PRIESTOR kombinuje n-tice z oboch tabuliek, pokiaľ medzi nimi existuje spoločný atribút. ĽAVÉ PRIPOJENIE výsledkom sú všetky n-tice ľavej tabuľky a zodpovedajúce n-tice z pravej tabuľky. PRÁVO PRIPOJIŤ výsledkom sú všetky n-tice z pravej tabuľky a iba zodpovedajúce n-tice z ľavej tabuľky. PLNÝ VONKAJŠÍ PRIESTOR výsledkom sú všetky n-tice z oboch tabuliek, aj keď majú alebo nemajú zodpovedajúce atribúty.


INNER JOIN je rovnaký ako JOIN. Môžete tiež zrušiť kľúčové slovo INNER a jednoducho použiť JOIN na vykonanie INNER JOIN.

Definícia únie

UNION je nastavená operácia v SQL. UNON kombinuje výsledok dvoch dopytov. Výsledok zjednotenia zahŕňa n-tice z oboch vzťahov prítomných v dotaze. Podmienky, ktoré musia byť splnené, sa vzťahujú na Úniu dvoch vzťahov:

  1. Tieto dva vzťahy musia mať rovnaký počet atribútov.
  2. Domény zodpovedajúcich atribútov musia byť rovnaké.

Existujú dva typy únie UNION a ÚNIA VŠETKY, Výsledok získaný pomocou programu UNION neobsahuje duplikáty. Na druhej strane, výsledok získaný pomocou UNION ALL si ponecháva duplikát.

  1. Primárny rozdiel medzi JOIN a UNION je v tom, že JOIN kombinuje n-tice z dvoch vzťahov a výsledné n-tice zahŕňajú atribúty z oboch vzťahov. Na druhej strane, únia kombinuje výsledok dvoch SELECT dotazov.
  2. Doložka JOIN je uplatniteľná iba vtedy, ak majú oba zúčastnené vzťahy aspoň jeden spoločný atribút. Na druhej strane je Únia uplatniteľná, ak majú dva vzťahy rovnaký počet atribútov a domény príslušných atribútov sú rovnaké.
  3. K dispozícii sú štyri typy spojenia VNÚTORNÉ PRIPOJENIE, ĽAVÉ PRIPOJENIE, PRAVÉ PRIPOJENIE, PLNE VONKAJŠIE PRIPOJENIE. Existujú však dva typy ÚNIE, ÚNIA a VŠETKY ÚNIE.
  4. V JOIN má výsledná n-tica väčšiu veľkosť, pretože obsahuje atribúty z obidvoch vzťahov. Na druhej strane, v Únii sa počet n-tíc zvyšuje v dôsledku zahrnutia n-tice z oboch vzťahov prítomných v dotaze.

záver:

Obe operácie kombinujúce údaje sa používajú v rôznych situáciách. JOIN sa používa, keď chceme kombinovať atribúty dvoch vzťahov, ktoré majú aspoň jeden spoločný znak. UNION sa používa, keď chceme kombinovať n-tice dvoch vzťahov, ktoré sú prítomné v dotaze.