SQL Union - kattava opas UNION-operaattorista



Tämä artikkeli on perusteellinen opas SQL UNION -operaattorin käyttämiseen. Tässä artikkelissa käsitellään esimerkkejä UNIONIN ja UNION ALLin välillä.

Käsitellessämme tietoja tietokannoissa usein käytämme asetettuja operaattoreita SQL , noutaa tietoja vaatimuksemme mukaan yhdistämällä vähintään kaksi SELECT-käskyä. Tässä SQL UNIONia käsittelevässä artikkelissa käsittelen UNION-operaattoria, jota käytetään tietojen hakemiseen seuraavassa järjestyksessä:

Anna meidän aloittaa!





Mikä on SQL UNION -operaattori?

Kuten nimestä voi päätellä, tätä operaattoria / lauseketta käytetään yhdistämään kahden tai useamman SELECT-lauseen tulokset. Tässä jokaisella UNION-käskyssä käytetyllä SELECT-käskyllä ​​on oltava sama määrä sarakkeita samassa järjestyksessä. Kaikilla SELECT-käskyjen sarakkeilla on oltava samanlaiset tietotyypit.

UNION-lauseke antaa tuotokseksi vain yksilölliset arvot. Jos haluat kopioida arvoja, sinun on käytettävä UNION ALL -lauseketta.



Siirrymme tässä artikkelissa SQL UNIONista ymmärtämään syntaksia.

SQL UNION -syntaksi

UNIONIN syntaksi

SELECT sarake1, sarake2, sarake3, ..., sarakeN taulukosta1 UNION SELECT sarake1, sarake2, sarake3, ..., sarakeN taulukosta2

UNIONIN KAIKKI syntaksi

SELECT sarake1, sarake2, sarake3, ..., sarakeN taulukosta1 UNION ALL SELECT sarake1, sarake2, sarake3, ..., sarakeN taulukosta2

Jatketaan tässä artikkelissa, ymmärretäänkö erot UNIONIN ja UNION ALL: n välillä.

Erot SQL UNIONin ja UNION ALLin välillä



LIITTO UNIONIN KAIKKI
Yhdistää vähintään kaksi tulosjoukkoa eikä pidä päällekkäisiä arvoja.Yhdistää vähintään kaksi tulosjoukkoa ja pitää päällekkäiset arvot.
 Syntaksi: LIITTO
 Syntaksi: UNIONIN KAIKKI
SQL UNION -SQL UNION -Edureka

Seuraavaksi, tässä SQL UNION -artikkelissa, ymmärretään eri tapoja käyttää tätä operaattoria.

Esimerkkejä SQL UNION ja UNION ALL

Paremman ymmärryksesi vuoksi harkitsen seuraavia taulukoita, joissa näytetään sinulle erilaisia ​​esimerkkejä.

Työntekijöiden taulukko

EmpID Nimi EmpAge Kaupunki Postinumero Maa
yksiEmma2. 3Berliini12109Saksa
2Rahul26Mumbai400015Intia
3Aayra24New York10014KÄYTTÖ
4John32LontooE1 7AEIso-Britannia
5Derek29New York10012KÄYTTÖ

Projektitaulukko

ProjectID Nimi Työpäivät Kaupunki Postinumero Maa
yksiProjekti 110Berliini12109Saksa
2Projekti 27Mumbai400015Intia
3Projekti 3kaksikymmentäDelhi110006Intia
4Projekti 4viisitoistaMumbai400015Intia
5Projekti 528Berliini12109Saksa

Aloitetaan esimerkkien avulla.

SQL UNION -esimerkkejä

Esimerkki UNIONIN operaattorista

Kirjoita kysely hakeaksesi erilliset kaupungit Työntekijät ja projektit -taulukosta.

VALITSE Kaupunki Työntekijöistä UNION VALITSE Kaupunki Projektista TILAA Kaupunki

Tuotos:

Kaupunki

Berliini

Delhi

Lontoo

Mumbai

New York

UNION ALL Operator -esimerkki

Kirjoita kysely kaupunkien hakemiseksi Työntekijät ja projektit -taulukosta. Tähän on sisällytettävä päällekkäiset arvot.

VALITSE Kaupunki Työntekijöiltä UNION KAIKKI VALITSE Kaupunki projekteista TILAA Kaupunki

Tuotos:

Kaupunki

Berliini

Berliini

muuntamalla kaksinkertainen int

Berliini

Delhi

Lontoo

Mumbai

Mumbai

Mumbai

New York

New York

Seuraavaksi tässä artikkelissa ymmärretään, kuinka UNION-lauseketta käytetään SQL-aliaksilla.

UNION SQL-aliaksilla

SQL-aliaksia käytetäänantaa taulukolle tai sarakkeelle väliaikainen nimi. Joten kirjoitetaan kysely kaikkien yksilöllisten työntekijöiden ja projektien listalle.

VALITSE 'Työntekijä' AS-tyyppi, nimi, kaupunki, maa työntekijöistä UNIONIN VALITSE 'projekti', nimi, kaupunki, maa hankkeista

Tuotos:

Tyyppi Nimi Kaupunki Maa
TyöntekijäEmmaBerliiniSaksa
TyöntekijäRahulMumbaiIntia
TyöntekijäAayraNew YorkKÄYTTÖ
TyöntekijäJohnLontooIso-Britannia
TyöntekijäDerekNew YorkKÄYTTÖ
ProjektiProjekti 1BerliiniSaksa
ProjektiProjekti 2MumbaiIntia
ProjektiProjekti 3DelhiIntia
ProjektiProjekti 4MumbaiIntia
ProjektiProjekti 5BerliiniSaksa

UNION WHERE-lausekkeella

Kirjoita kysely, jolla voit hakea erilliset Intian kaupungit ja niiden postinumero sekä työntekijät että projektit -taulukosta.

SELECT City, PostalCode, Country FROM Employees WHERE Country = 'India' UNION SELECT City, PostalCode, Country FROM Projects WHERE Country = 'India' ORDER BY City

Tuotos:

Kaupunki Postinumero Maa
Delhi110006Intia
Mumbai400015Intia

UNION ALL with WHERE -lauseke

Kirjoita kysely Intian kaupunkien ja niiden postinumeroiden hakemiseksi sekä työntekijöiden että projektien taulukosta, jossa päällekkäiset arvot ovat sallittuja.

VALITSE Kaupunki, postinumero, maa työntekijöiltä WHERE Maa = 'Intia' UNION ALL VALITSE Kaupunki, postinumero, maa FROM Projekteista WHERE Maa = 'Intia' TILAA Kaupunki

Tuotos:

Kaupunki Postinumero Maa
Delhi110006Intia
Mumbai400015Intia
Mumbai400015Intia
Mumbai400015Intia

Tässä artikkelissa eteenpäin ymmärretään, kuinka UNION- ja UNION ALL -lausekkeita käytetään JOINS-palvelun kanssa.JOINS SQL: ssä ovat joita käytetään kahden tai useamman taulukon rivien yhdistämiseen näiden taulukoiden välisen vastaavan sarakkeen perusteella.

UNIONIN LIITTYMINEN

SQL UNION -operaattoria voidaan käyttää hakea tietoja kahdesta eri taulukosta. Tarkastelen seuraavaa taulukkoa yhdessä esimerkin Employees-taulukon kanssa.

ProjectDetails-taulukko

PID Työpäivät EmpID CostforProject
yksitoista12420000
2216335000
3330yksi60000
4425345000
55kaksikymmentäyksiyksi50000
SELECT EmpID, nimi, CostforProject työntekijöiltä LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Tuotos:

EmpID Nimi CostforProject
yksiEmma60000
yksiEmma50000
2RahulTYHJÄ
3Aayra35000
3Aayra45000
4John20000
5DerekTYHJÄ

UNIONIN KAIKKI LIITTYMISIIN

Kirjoita kysely hakeaksesi EmpID, nimi ja CostforProject työntekijöiltä ja ProjectDetails-taulukosta, jossa päällekkäiset arvot ovat sallittuja.

SELECT EmpID, nimi, CostforProject työntekijöiltä LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Tuotos:

EmpID Nimi CostforProject
yksiEmma60000
yksiEmma50000
2RahulTYHJÄ
3Aayra35000
3Aayra45000
4John20000
5DerekTYHJÄ
4John20000
3Aayra35000
yksiEmma60000
3Aayra35000
yksiEmma50000

Tällä tavoin olen tämän SQL UNIONia koskevan artikkelin loppuun. Toivottavasti nautit tämän artikkelin lukemisesta SQL UNIONissa. Olemme nähneet erilaisia ​​tapoja käyttää UNION- ja UNION ALL -komentoja kyselyjen kirjoittamisessa. Jos haluat oppia lisää MySQL ja tutustu tähän avoimen lähdekoodin relaatiotietokantaan ja tutustu sitten joka sisältää ohjaajan vetämän live-koulutuksen ja tosielämän projektikokemuksen. Tämä koulutus auttaa ymmärtämään MySQL: ää perusteellisesti ja auttaa hallitsemaan aihetta.

Onko sinulla kysymys meille? Mainitse se ”SQL UNION” -kommenttiosassa ja palaan sinuun.

ero menetelmän ylikuormituksen ja ohittamisen välillä