Aanbevolen, 2024

Editor'S Choice

Verschil tussen JOIN en UNION in SQL

JOIN en UNION zijn de clausules in SQL, die worden gebruikt om de gegevens van twee of meer relaties te combineren. Maar de manier waarop ze gegevens en het formaat van het verkregen resultaat combineren, verschilt. De JOIN- clausule combineert de attributen van twee relaties om de resulterende tuples te vormen, terwijl de UNION- clausule het resultaat van twee query's combineert. Laten we het verschil tussen JOIN en UNION bespreken met behulp van de onderstaande vergelijkingsgrafiek.

Vergelijkingstabel

Basis voor vergelijkingJOINUNIE
basis-JOIN combineert attributen van de tuples die aanwezig zijn in de twee verschillende relaties die enkele gemeenschappelijke velden of attributen delen.UNION combineert tuples van de relaties die aanwezig zijn in de query.
StaatJOIN is van toepassing wanneer de twee betrokken relaties ten minste één gemeenschappelijk kenmerk hebben.UNION is van toepassing wanneer het aantal kolommen in de query hetzelfde is en de bijbehorende kenmerken hetzelfde domein hebben.
TypesINNERLIJK, VOLLEDIG (BUITENKANT), LINKS MEEDOEN, RECHTS MEEDOEN.UNION en UNION ALLEN.
EffectDe lengte van de resulterende tuples is meer in vergelijking met de lengte van tupels van de betrokken relaties.Het aantal resulterende tuples is meer in vergelijking met het aantal tupels dat aanwezig is in de elke relatie die bij de query is betrokken.
Diagram

Definitie van JOIN

JOIN- clausule in SQL combineert de tupels van twee relaties of tabellen, wat resulteert in een langere tupelgrootte. Het resulterende tuple bevat attributen uit zowel de relatie. Attributen worden gecombineerd op basis van de gemeenschappelijke kenmerken ertussen. De verschillende typen JOIN in SQL zijn INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN.

INNER JOIN combineert tuples uit beide tabellen zolang er een gemeenschappelijk attribuut tussen beide bestaat. LINKER JOIN resulteert in alle tupels van de linker tabel en het bijpassende tuple van de rechtse tabel. RIGHT JOIN resulteert in alle tuples van de rechtse tabel en alleen in overeenstemming met het tuple van de linkertabel. FULL OUTER JOIN resulteert in alle tuples uit beide tabellen, hoewel ze wel of geen overeenkomende kenmerken hebben.

INNER JOIN is hetzelfde als JOIN. Je kunt ook het INNER-sleutelwoord laten vallen en gewoon JOIN gebruiken om INNER JOIN te spelen.

Definitie van UNION

UNION is een setbewerking in SQL. UNON combineert het resultaat van twee vragen. Het resultaat van UNION bevat de tuples van beide relaties die aanwezig zijn in de query. De voorwaarden waaraan moet worden voldaan, zijn de UNION van twee relaties:

  1. De twee relaties moeten hetzelfde aantal kenmerken hebben.
  2. De domeinen van het overeenkomstige kenmerk moeten hetzelfde zijn.

Er zijn twee soorten UNION die UNION en UNION ALL zijn . Het resultaat verkregen met behulp van UNION bevat geen duplicaten. Aan de andere kant blijft het resultaat verkregen met UNION ALL duplicaat.

Belangrijkste verschillen tussen JOIN en UNION in SQL

  1. Het belangrijkste verschil tussen JOIN en UNION is dat JOIN de tuples uit twee relaties combineert en dat de resulterende tuples attributen uit beide relaties bevatten. Aan de andere kant combineert de UNION het resultaat van twee SELECT-query's.
  2. De JOIN-clausule is alleen van toepassing wanneer de twee betrokken relaties ten minste één attribuut gemeen hebben in beide. Aan de andere kant is de UNION van toepassing wanneer de twee relaties hetzelfde aantal attributen hebben en de domeinen van overeenkomstige attributen hetzelfde zijn.
  3. Er zijn vier soorten JOIN INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN. Maar er zijn twee soorten UNION, UNION en UNION ALL.
  4. In JOIN heeft de resulterende tuple de grootste omvang omdat deze attributen uit zowel de relatie bevat. Aan de andere kant wordt in UNION het aantal tuples verhoogd, inclusief het tuple van zowel de relaties die aanwezig zijn in de query.

Conclusie:

Beide zijn gegevenscombinerende bewerkingen en worden in verschillende situaties gebruikt. JOIN wordt gebruikt als we attributen van twee relaties willen combineren die minstens één attribuut gemeen hebben. UNION wordt gebruikt wanneer we de tuples van de twee relaties die aanwezig zijn in de query willen combineren.

Top