Rozdíl mezi JOIN a UNION v SQL

Autor: Laura McKinney
Datum Vytvoření: 2 Duben 2021
Datum Aktualizace: 5 Smět 2024
Anonim
Rozdíl mezi JOIN a UNION v SQL - Technologie
Rozdíl mezi JOIN a UNION v SQL - Technologie

Obsah


JOIN a UNION jsou klauzule v SQL, které se používají ke kombinování dat dvou nebo více vztahů. Způsob, jakým kombinují data a formát dosaženého výsledku, se však liší. PŘIPOJIT klauzule kombinuje atributy dvou vztahů a vytváří výsledné n-tice, zatímco, UNIE Klauzule kombinuje výsledek dvou dotazů. Pojďme diskutovat o rozdílu mezi JOIN a UNION pomocí srovnávací tabulky níže.

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

Srovnávací tabulka

Základ pro srovnáníPŘIPOJITUNIE
ZákladníJOIN kombinuje atributy n-tic přítomných ve dvou různých vztazích, které sdílejí některá běžná pole nebo atributy.UNION kombinuje n-tice vztahů, které jsou v dotazu přítomny.
StavJOIN je použitelný, pokud mají oba zúčastněné vztahy alespoň jeden společný atribut.UNION je použitelný, když počet sloupců přítomných v dotazu je stejný a odpovídající atributy mají stejnou doménu.
TypyVNITŘNÍ, PLNÉ (VNĚJŠÍ), LEVÉ PŘIPOJENÍ, PRAVÉ SPOJENÍUNIE a UNION ALL.
ÚčinekDélka výsledných n-tic je větší ve srovnání s délkou n-tic zapojených vztahů.Počet výsledných n-tic je více ve srovnání s počtem n-tic přítomných v každé relaci zapojené do dotazu.
Diagram



Definice JOIN

PŘIPOJIT Klauzule v SQL kombinuje n-tice ze dvou vztahů nebo tabulek, což má za následek delší velikost n-tice. Výsledná n-tice obsahuje atributy z obou relací. Atributy jsou kombinovány na základě společných atributů mezi nimi. Různé typy JOIN v SQL jsou VNITŘNÍ PŘIPOJENÍ, LEVÝ PŘIPOJENÍ, PRAVÝ PŘIPOJENÍ, PLNÝ VNĚJŠÍ PŘIPOJENÍ.

VNITŘNÍ SPOJENÍ kombinuje n-tice z obou tabulek, pokud mezi nimi existuje společný atribut. LEVÝ PŘIPOJENÍ výsledkem jsou všechny n-tice levé tabulky a odpovídající n-tice z pravé tabulky. PRAVÝ PŘIPOJENÍ výsledkem jsou všechny n-tice z pravé tabulky a pouze odpovídající n-tice z levé tabulky. PLNÝ VNĚJŠÍ PŘIPOJENÍ výsledky ve všech n-ticích z obou tabulek, i když mají odpovídající atributy nebo ne.


VNITŘNÍ PŘIPOJENÍ je stejné jako PŘIPOJENÍ. Můžete také zrušit klíčové slovo INNER a jednoduše použít JOIN k provedení INNER JOIN.

Definice UNIE

UNION je sada operací v SQL. UNON kombinuje výsledek dvou dotazů. Výsledek UNION zahrnuje n-tice z obou vztahů přítomných v dotazu. Podmínky, které musí být splněny, berou v úvahu unii dvou vztahů:

  1. Oba vztahy musí mít stejný počet atributů.
  2. Domény odpovídajícího atributu musí být stejné.

Existují dva typy unií UNIE a UNION ALL. Výsledek získaný pomocí UNION nezahrnuje duplikáty. Na druhé straně si výsledek získaný pomocí UNION ALL zachovává duplikát.

  1. Primární rozdíl mezi JOIN a UNION spočívá v tom, že JOIN kombinuje n-tice ze dvou vztahů a výsledné n-tice obsahují atributy z obou vztahů. Na druhou stranu UNION kombinuje výsledek dvou SELECT dotazů.
  2. Klauzule JOIN je použitelná pouze tehdy, mají-li oba zúčastněné vztahy alespoň jeden společný atribut. Na druhou stranu je UNION použitelný, pokud mají oba vztahy stejný počet atributů a domény odpovídajících atributů jsou stejné.
  3. K dispozici jsou čtyři typy VNITŘNÍHO PŘIPOJENÍ, VLEČNÝ PŘIPOJENÍ, PRAVÝ PŘIPOJENÍ, PLNÝ VNĚJŠÍ PŘIPOJENÍ. Existují však dva typy UNIE, UNIE a UNION ALL.
  4. V JOIN má výsledná n-tice větší velikost, protože zahrnuje atributy z obou relací. Na druhou stranu v UNION se počet n-tic zvyšuje, což zahrnuje n-tici z obou vztahů přítomných v dotazu.

Závěr:

Obě operace kombinující data se používají v různých situacích. JOIN se používá, když chceme kombinovat atributy dvou vztahů, které mají alespoň jeden společný atribut. UNION se používá, když chceme kombinovat n-tice dvou vztahů, které jsou v dotazu.