Dok obrađujemo podatke u bazama podataka, često koristimo skupove operatora u SQL , za preuzimanje podataka prema našim zahtjevima kombiniranjem dvije ili više SELECT izjava. U ovom članku o SQL UNION-u, raspravit ću o operateru UNION koji se koristi za dohvaćanje podataka u sljedećem slijedu:
Krenimo!
Što je operater SQL UNION?
Kao što i samo ime govori, ovaj operator / klauzula koristi se za kombiniranje rezultata dviju ili više naredbi SELECT. Ovdje svaka naredba SELECT koja se koristi unutar izjave UNION mora imati jednak broj stupaca istim redoslijedom. Također, svi stupci prisutni u naredbama SELECT moraju imati slične tipove podataka.
Klauzula UNION kao izlaz daje samo jedinstvene vrijednosti. Za svaki slučaj želite dvostruke vrijednosti, tada morate koristiti klauzulu UNION ALL.
Nastavljajući u ovom članku o SQL UNION-u, shvatimo sintaksu.
Sintaksa SQL UNION
Sindikat UNIJE
ODABERI stupac1, stupac2, stupac3, ..., stupacN IZ tablice1 UNION ODABERI stupac1, stupac2, stupac3, ..., stupacN IZ tablice2
UNION ALL Sintaksa
ODABERI stupac1, stupac2, stupac3, ..., stupacN IZ tablice1 UNION ALL SELECT stupac1, stupac2, stupac3, ..., stupacN IZ tablice2
Nastavljajući dalje s ovim člankom, shvatimo razlike između UNION-a i UNION ALL-a.
binarni algoritam pretraživanja u javi
Razlike između SQL UNION i UNION ALL
UNIJA | SAVEZ SVE |
Kombinira dva ili više skupa rezultata i ne zadržava dvostruke vrijednosti. | Kombinira dva ili više rezultata i zadržava dvostruke vrijednosti. |
Sintaksa: UNIJA | Sintaksa: SAVEZ SVE |
![]() |
Dalje, u ovom članku o SQL UNION-u, dopusti nam da razumijemo različite načine upotrebe ovog operatora.
Primjeri SQL UNION i UNION ALL
Radi vašeg boljeg razumijevanja, razmotrit ću sljedeće tablice kako bih vam pokazao različite primjere.
Stol zaposlenika
EmpID | Ime | EmpAge | Grad | Poštanski broj | Zemlja |
jedan | Emma | 2. 3 | Berlin | 12109 | Njemačka |
2 | Rahul | 26 | Mumbaiju | 400015 | Indija |
3 | Aayra | 24 | New York | 10014 | UPOTREBE |
4 | Ivan | 32 | London | E1 7AE | UK |
5 | Derek | 29 | New York | 10012 | UPOTREBE |
Tablica projekata
ID projekta | Ime | Radni dani | Grad | Poštanski broj | Zemlja |
jedan | Projekt 1 | 10 | Berlin | 12109 | Njemačka |
2 | Projekt 2 | 7 | Mumbaiju | 400015 | Indija |
3 | Projekt 3 | dvadeset | Delhi | 110006 | Indija |
4 | Projekt 4 | petnaest | Mumbaiju | 400015 | Indija |
5 | Projekt 5 | 28 | Berlin | 12109 | Njemačka |
Krenimo s primjerima.
Primjeri SQL UNION-a
Primjer operatora UNION
Napišite upit za dohvaćanje različitih gradova iz tablice Zaposlenici i projekti.
ODABERITE grad od zaposlenika UNION ODABERITE grad od projekata REDI PO GRADU
Izlaz:
Grad |
Berlin |
Delhi |
London stl sortiraj c ++ |
Mumbaiju |
New York |
Primjer operatora UNION ALL
Napišite upit za preuzimanje gradova iz tablice Zaposlenici i projekti. Ovdje moraju biti uključene dvostruke vrijednosti.
ODABERITE GRAD OD ZAPOSLENIH SVI ODABERITE GRAD OD projekata NARUČITE PO GRADU
Izlaz:
Grad |
Berlin |
Berlin |
Berlin |
Delhi |
London |
Mumbaiju |
Mumbaiju |
Mumbaiju |
New York |
New York |
Sljedeće u ovom članku, shvatimo kako koristiti klauzulu UNION s SQL pseudonimima.
naličje broja u javi
UNION s SQL pseudonimima
Koriste se SQL pseudonimidati tablici ili stupcu privremeno ime. Dakle, napišite upit za popis svih jedinstvenih zaposlenika i projekata.
ODABERITE 'Zaposlenika' KAO vrstu, ime, grad, državu OD zaposlenika UNION ODABERITE 'projekt', ime, grad, zemlju OD projekata
Izlaz:
Tip | Ime | Grad | Zemlja |
Zaposlenik | Emma | Berlin | Njemačka |
Zaposlenik | Rahul | Mumbaiju | Indija |
Zaposlenik | Aayra | New York | UPOTREBE |
Zaposlenik | Ivan | London | UK |
Zaposlenik | Derek | New York | UPOTREBE |
Projekt | Projekt 1 | Berlin | Njemačka |
Projekt | Projekt 2 | Mumbaiju | Indija |
Projekt | Projekt 3 | Delhi | Indija |
Projekt | Projekt 4 | Mumbaiju | Indija |
Projekt | Projekt 5 | Berlin | Njemačka |
UNION s klauzulom WHERE
Napišite upit za dohvaćanje različitih indijskih gradova i njihovih poštanskih brojeva iz tablice Zaposlenici i Projekti.
ODABERITE grad, poštanski broj, državu OD zaposlenika GDJE država = 'Indija' UNIJA ODABERITE grad, poštanski broj, zemlju OD projekata GDJE država = 'Indija' REDOSLIJED PO GRADU
Izlaz:
Grad | Poštanski broj | Zemlja |
Delhi | 110006 | Indija |
Mumbaiju | 400015 | Indija |
UNION ALL s klauzulom WHERE
Napišite upit za dohvaćanje indijskih gradova i njihovih poštanskih brojeva iz tablice Zaposlenici i Projekti, gdje su dopuštene dvostruke vrijednosti
ODABERITE grad, poštanski broj, državu OD zaposlenika GDJE država = 'Indija' UNIJA SVE ODABERITE grad, poštanski broj, zemlju OD projekata GDJE država = 'Indija' REDOSLIJED PO GRADU
Izlaz:
Grad | Poštanski broj | Zemlja |
Delhi | 110006 | Indija |
Mumbaiju | 400015 | Indija |
Mumbaiju | 400015 | Indija |
Mumbaiju | 400015 | Indija |
Krećući se naprijed u ovom članku, shvatimo kako koristiti klauzule UNION i UNION ALL s JOINS.PRIDRUŽIVANJA u SQL-u su koji se koriste za kombiniranje redaka iz dvije ili više tablica na temelju povezanog stupca između tih tablica.
UNIJA s PRIDRUŽUJE
SQL UNION operator može se koristiti s za preuzimanje podataka iz dvije različite tablice. Razmotrit ću sljedeću tablicu zajedno sa tablicom zaposlenika za primjer.
Tablica projektnih detalja
PID | Radni dani | EmpID | CostforProject |
jedanaest | 12 | 4 | 20000 |
22 | 16 | 3 | 35000 |
33 | 30 | jedan | 60000 |
44 | 25 | 3 | 45000 |
55 | dvadeset i jedan | jedan | 50.000 |
SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN PRIDRŽI SE ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN PRIDRUŽI SE ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Izlaz:
EmpID | Ime | CostforProject |
jedan | Emma | 60000 |
jedan | Emma | 50.000 |
2 | Rahul | NULL |
3 | Aayra | 35000 |
3 | Aayra | 45000 |
4 | Ivan | 20000 |
5 | Derek | NULL |
UNION ALL with JOINS
Napišite upit za dohvaćanje EmpID-a, Name i CostforProject iz tablice Employees i ProjectDetails, gdje su dopuštene dvostruke vrijednosti.
SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN PRIDRŽI SE ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN PRIDRUŽI SE ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Izlaz:
EmpID | Ime | CostforProject |
jedan | Emma | 60000 |
jedan | Emma | 50.000 |
2 | Rahul | NULL |
3 | Aayra | 35000 |
3 | Aayra | 45000 |
4 | Ivan | 20000 |
5 | Derek | NULL |
4 | Ivan | 20000 |
3 | Aayra | 35000 |
jedan | Emma | 60000 |
3 | Aayra | 35000 |
jedan | Emma | 50.000 |
Ovime dolazim do kraja ovog članka o SQL UNION-u. Nadam se da ste uživali čitajući ovaj članak o SQL UNION-u. Vidjeli smo različite načine korištenja naredbi UNION i UNION ALL za pomoć u pisanju upita. Ako želite saznati više o MySQL i upoznajte ovu relacijsku bazu podataka otvorenog koda, a zatim pogledajte našu koja dolazi s treningom uživo pod vodstvom instruktora i iskustvom u stvarnom životu. Ovaj trening pomoći će vam da dublje razumijete MySQL i pomoći vam da postignete ovladavanje tom temom.
Imate pitanje za nas? Molimo spomenite to u odjeljku za komentare 'SQL UNION' i javiću vam se.