Tvarkydami duomenis duomenų bazėse, mes dažnai linkę naudoti nustatytus operatorius SQL , norint gauti duomenis pagal mūsų reikalavimus, derinant du ar daugiau SELECT sakinių. Šiame straipsnyje apie SQL UNION aptarsiu UNION operatorių, naudojamą duomenims nuskaityti tokia seka:
- Kas yra „SQL UNION“ operatorius?
- Sintaksė:
- Skirtumai tarp SĄJUNGOS ir SĄJUNGOS VISŲ
- SQL SĄJUNGOS pavyzdžiai:
Pradėkime!
Kas yra „SQL UNION“ operatorius?
Kaip rodo pavadinimas, šis operatorius / sąlyga naudojama derinant dviejų ar daugiau SELECT sakinių rezultatus. Čia kiekvienas SELECT sakinys, naudojamas UNION sakinyje, turi turėti tą patį stulpelių skaičių ta pačia tvarka. Be to, visų stulpelių, esančių SELECT sakiniuose, duomenų tipai turi būti panašūs.
Sąlygoje „UNION“ kaip išvestis nurodomos tik unikalios vertės. Tik tuo atveju, jei norite pasikartojančių verčių, turite naudoti sąlygą UNION ALL.
kaip naudotis java swing
Pereikime prie šio straipsnio apie SQL UNION, supraskime sintaksę.
SQL SĄJUNGOS sintaksė
SĄJUNGOS sintaksė
PASIRINKITE 1 stulpelį, 2 stulpelį, 3 stulpelį, ..., stulpelįNIŠ 1 lentelės UNION PASIRINKITE 1 stulpelį, 2 stulpelį, 3 stulpelį, ..., 2 stulpelį iš 2 lentelės
SĄJUNGOS VISOS sintaksės
PASIRINKITE 1 stulpelį, 2 stulpelį, 3 stulpelį, 3 stulpelį, N iš 1 lentelės, UNION ALL SELECT 1 stulpelį, 2 stulpelį, 3 stulpelį, ..., 2 stulpelį iš 2 lentelės
Tęsdami šį straipsnį, leiskite mums suprasti skirtumus tarp SĄJUNGOS ir SĄJUNGOS VISŲ.
Skirtumai tarp SQL UNION ir UNION ALL
SĄJUNGA | SĄJUNGA VISI |
Sujungia du ar daugiau rezultatų rinkinį ir neišsaugo pasikartojančių verčių. | Sujungia du ar daugiau rezultatų rinkinį ir išlaiko pasikartojančias vertes. |
Sintaksė: SĄJUNGA | Sintaksė: SĄJUNGA VISI |
![]() |
Toliau šiame straipsnyje apie SQL UNION supraskime įvairius šio operatoriaus naudojimo būdus.
SQL UNION ir UNION ALL pavyzdžiai
Kad geriau suprastumėte, apsvarstysiu šias lenteles, kuriose bus pateikti skirtingi pavyzdžiai.
Darbuotojų lentelė
„EmpID“ | vardas | „EmpAge“ | Miestas | Pašto kodas | Šalis |
vienas | Ema | 2. 3 | Berlynas | 12109 m | Vokietija |
2 | Rahul | 26 | Mumbajus | 400015 | Indija |
3 | Aayra | 24 | Niujorkas | 10014 m | NAUDOJIMAS |
4 | Jonas | 32 | Londonas | E1 7AE | JK |
5 | Derekas | 29 | Niujorkas | 10012 m | NAUDOJIMAS |
Projektų lentelė
„ProjectID“ | vardas | Darbo dienos | Miestas | Pašto kodas | Šalis |
vienas | 1 projektas | 10 | Berlynas | 12109 m | Vokietija |
2 | 2 projektas | 7 | Mumbajus | 400015 | Indija |
3 | 3 projektas | dvidešimt | Delis | 110006 | Indija |
4 | 4 projektas | penkiolika | Mumbajus | 400015 | Indija |
5 | 5 projektas | 28 | Berlynas | 12109 m | Vokietija |
Pradėkime nuo pavyzdžių.
SQL SĄJUNGOS pavyzdžiai
SĄJUNGOS operatoriaus pavyzdys
Parašykite užklausą, jei norite gauti skirtingus miestus iš lentelės „Darbuotojai ir projektai“.
PASIRINKITE miestą IŠ DARBUOTOJŲ SĄJUNGOS PASIRINKITE miestą iš projektų UŽSAKYTI pagal miestą
Išvestis:
Miestas |
Berlynas |
Delis |
Londonas |
Mumbajus |
Niujorkas |
„UNION ALL“ operatoriaus pavyzdys
Parašykite užklausą, norėdami gauti miestus iš lentelės „Darbuotojai ir projektai“. Čia reikia įtraukti pasikartojančias vertes.
PASIRINKITE miestą iš darbuotojų SĄJUNGOS VISI PASIRINKITE miestą iš projektų UŽSAKYKITE pagal miestą
Išvestis:
Miestas |
Berlynas |
Berlynas |
Berlynas |
Delis |
Londonas |
Mumbajus |
Mumbajus |
Mumbajus |
Niujorkas |
Niujorkas |
Toliau šiame straipsnyje leiskite mums suprasti, kaip naudoti sąlygą UNION su SQL slapyvardžiais.
kas yra „sqlite“ naršyklė
SĄJUNGA su SQL slapyvardžiais
Naudojami SQL slapyvardžiailentelei ar stulpeliui suteikti laikiną pavadinimą. Taigi, parašykime užklausą, kurioje bus išvardyti visi unikalūs darbuotojai ir projektai.
PASIRINKTI „Darbuotojo“ AS tipą, vardą, miestą, šalį iš darbuotojų sąjungos PASIRINKTI „Projektą“, vardą, miestą, šalį iš projektų
Išvestis:
Tipas | vardas | Miestas | Šalis |
Darbuotojas | Ema | Berlynas | Vokietija |
Darbuotojas | Rahul | Mumbajus | Indija |
Darbuotojas | Aayra | Niujorkas | NAUDOJIMAS |
Darbuotojas | Jonas | Londonas | JK |
Darbuotojas | Derekas | Niujorkas | NAUDOJIMAS |
Projektas | 1 projektas | Berlynas | Vokietija |
Projektas | 2 projektas | Mumbajus | Indija |
Projektas | 3 projektas | Delis | Indija |
Projektas | 4 projektas | Mumbajus | Indija |
Projektas | 5 projektas | Berlynas | Vokietija |
SĄJUNGA su sąlyga WHERE
Parašykite užklausą, kad gautumėte skirtingus Indijos miestus ir jų pašto kodus iš lentelės „Darbuotojai“ ir „Projektai“.
PASIRINKITE miestą, pašto kodą, šalį iš darbuotojų WHERE Šalis = 'Indija' SĄJUNGA PASIRINKITE miestą, pašto kodą, šalį iš projektų WHERE Šalis = 'Indija' UŽSAKYTI pagal miestą
Išvestis:
Miestas | Pašto kodas | Šalis |
Delis | 110006 | Indija |
Mumbajus | 400015 | Indija |
SĄJUNGA VISI su sąlyga WHERE
Parašykite užklausą, norėdami gauti Indijos miestus ir jų pašto kodus iš lentelės „Darbuotojai“ ir „Projektai“, kur leidžiamos pasikartojančios vertės
PASIRINKITE miestą, pašto kodą, šalį iš darbuotojų WHERE Šalis = 'India' UNION ALL SELECT City, PostalCode, Country FROM Projects WHERE Country = 'India' UŽSAKYTI pagal miestą
Išvestis:
Miestas | Pašto kodas | Šalis |
Delis | 110006 | Indija |
Mumbajus | 400015 | Indija |
Mumbajus | 400015 | Indija |
Mumbajus | 400015 | Indija |
Pažvelkime į priekį šiame straipsnyje ir supraskime, kaip naudoti JUNGTIS ir SĄJUNGOS VISAS išlygas.PRISIJUNGIA SQL kurie naudojami derinant dviejų ar daugiau lentelių eilutes, remiantis susijusiu stulpeliu tarp tų lentelių.
SĄJUNGA su JUNGIMIS
SQL UNION operatorių galima naudoti su gauti duomenis iš dviejų skirtingų lentelių. Aš apsvarstysiu šią lentelę kartu su lentele „Darbuotojai“.
„ProjectDetails“ lentelė
PID | Darbo dienos | „EmpID“ | „CostforProject“ |
vienuolika | 12 | 4 | 20000 m |
22 | 16 | 3 | 35000 |
33 | 30 | vienas | 60000 |
44 | 25 | 3 | 45000 |
55 | dvidešimt vienas | vienas | 50 000 |
PASIRINKITE „EmpID“, „Name“, „CostforProject“ iš darbuotojų, likusių prisijungti, ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Išvestis:
„EmpID“ | vardas | „CostforProject“ |
vienas | Ema | 60000 |
vienas | Ema | 50 000 |
2 | Rahul | NULL |
3 | Aayra | 35000 |
3 | Aayra | 45000 |
4 | Jonas | 20000 m |
5 | Derekas | NULL |
SĄJUNGA VISI su jungtimis
Parašykite užklausą, kad gautumėte „EmpID“, „Name and CostforProject“ iš darbuotojų ir „ProjectDetails“ lentelės, kur leidžiamos pasikartojančios vertės.
PASIRINKITE „EmpID“, „Name“, „CostforProject“ iš darbuotojų kairę prisijungti prie „ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Išvestis:
„EmpID“ | vardas | „CostforProject“ |
vienas | Ema | 60000 |
vienas | Ema | 50 000 |
2 | Rahul | NULL |
3 | Aayra | 35000 |
3 | Aayra | 45000 |
4 | Jonas | 20000 m |
5 | Derekas | NULL |
4 | Jonas | 20000 m |
3 | Aayra | 35000 |
vienas | Ema | 60000 |
3 | Aayra | 35000 |
vienas | Ema | 50 000 |
Tuo aš einu į šio straipsnio apie SQL UNION pabaigą. Tikiuosi, kad jums patiko skaityti šį straipsnį apie SQL UNION. Mes matėme įvairius būdus, kaip naudoti komandas „UNION“ ir „UNION ALL“, kad būtų lengviau rašyti užklausas. Jei norite sužinoti daugiau apie „MySQL“ ir susipažinkite su šia atviro kodo reliacine duomenų baze, tada patikrinkite mūsų kuris ateina su instruktorių vedamomis tiesioginėmis treniruotėmis ir realių projektų patirtimi. Šie mokymai padės jums giliau suprasti „MySQL“ ir padės įsisavinti šį dalyką.
Turite mums klausimą? Prašau paminėti tai „SQL UNION“ komentarų skyriuje, ir aš susisieksiu su jumis.