Recomandat, 2024

Alegerea Editorului

Diferența dintre JOIN și UNION în SQL

JOIN și UNION sunt clauzele din SQL, utilizate pentru a combina datele a două sau mai multe relații. Dar modul în care combină datele și formatul rezultatului obținut diferă. Clauza JOIN combină atributele a două relații pentru a forma tipele rezultate, în timp ce clauza UNION combină rezultatul a două interogări. Să discutăm diferența dintre JOIN și UNION cu ajutorul diagramei de comparație prezentată mai jos.

Diagramă de comparație

Bazele comparațieiA ADERAUNIUNE
De bazăJOIN combină atributele tuplurilor prezente în cele două relații diferite care împărtășesc câteva câmpuri sau atribute comune.UNION combină tuplurile relațiilor prezente în interogare.
CondițieJOIN este aplicabil atunci când cele două relații implicate au cel puțin un atribut comun.UNION este aplicabil atunci când numărul de coloane prezente în interogare este același, iar atributele corespunzătoare au același domeniu.
TipuriINNER, FULL (EXTERIOR), ALIMENTAȚI LA STÂNGA, ÎNTR-UN ALTĂ.UNION și UNION ALL.
EfectLungimea tuplilor rezultate este mai mult în comparație cu lungimea tuplilor relațiilor implicate.Numărul tuplurilor rezultate este mai mult în comparație cu numărul de tupluri prezente în fiecare relație implicată în interogare.
Diagramă

Definiția JOIN

JOIN clauza în SQL combină tuplurile din două relații sau tabele rezultând într-o dimensiune a piesei mai lungi. Cuplul rezultat conține atribute din ambele relații. Atributele sunt combinate pe baza atributelor comune dintre ele. Diferitele tipuri de JOIN în SQL sunt INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN.

INNER JOIN combină tuplurile din ambele mese atâta timp cât există un atribut comun între ele. LEFT JOIN are ca rezultat toate tuplurile mesei stângi și mărimea potrivită din tabelul din dreapta. RIGHT JOIN are ca rezultat toate tuplurile de pe masa dreapta și numai tuplele potrivite din tabela stângă. FULL OUTOUN JOIN are ca rezultat toate tuplurile din ambele tabele, deși au atribute asemănătoare sau nu.

INNER JOIN este același cu JOIN. De asemenea, puteți renunța la cuvântul cheie INNER și pur și simplu utilizați JOIN pentru a efectua INNER JOIN.

Definiția UNION

UNION este o operație setată în SQL. UNON combină rezultatul a două interogări. Rezultatul UNION include tuplurile din ambele relații prezente în interogare. Condițiile care trebuie satisfăcute iau UNIUNEA a două relații:

  1. Cele două relații trebuie să aibă același număr de atribute.
  2. Domeniile atributului corespunzător trebuie să fie identice.

Există două tipuri de Uniuni care sunt UNION și UNION ALL . Rezultatul obținut prin utilizarea UNION nu include duplicate. Pe de altă parte, rezultatul obținut utilizând UNION ALL păstrează duplicat.

Diferențe cheie între JOIN și UNION în SQL

  1. Principala diferență dintre JOIN și UNION este că JOIN combină tuplurile din două relații, iar tuplurile rezultate includ atribute din ambele relații. Pe de altă parte, UNIUNEA combină rezultatul a două interogări SELECT.
  2. Clauza JOIN este aplicabilă numai atunci când cele două relații implicate au cel puțin un atribut comun în ambele. Pe de altă parte, UNIUNEA este aplicabilă atunci când cele două relații au același număr de atribut, iar domeniile asociate atributelor sunt identice.
  3. Există patru tipuri de JOIN INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN. Dar există două tipuri de UNION, UNION și UNION ALL.
  4. În JOIN, tuplul rezultat are dimensiunea mai mare, deoarece include atribute din ambele relații. Pe celelalte mâini, în UNION, numărul de tupluri este mărit, ca rezultat, include tupla din ambele relații prezente în interogare.

Concluzie:

Ambele date care combină operațiunile sunt utilizate în situații diferite. JOIN este folosit atunci când dorim să combinăm atributele a două relații având cel puțin un atribut în comun. UNION este folosit atunci când dorim să combinăm tuplurile celor două relații prezente în interogare.

Top