SQL UNION ja UNION ALL-operaattorit
- Edellinen sivu SQL Full Join
- Seuraava sivu SQL Select Into
SQL UNION-operaattori
UNION-operaattori käytetään kahden tai useamman SELECT-lauseen tulosten yhdistämiseen.
Huomaa, että UNION-sisällä olevan SELECT-lauseen on olla saman verran sarakkeita. Sarakkeiden on myös oltava samanlaisia tietotyyppejä. Lisäksi jokaisen SELECT-lauseen sarakkeiden järjestys on olla sama.
SQL UNION -syntaksi
SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2
Huomautus:Oletusarvoisesti UNION-operaattori valitsee vain erilaiset arvot. Jos sallit toistuvat arvot, käytä UNION ALL.
SQL UNION ALL -syntaksi
SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2
Lisäksi UNION-tulosten sarakkeiden nimet ovat aina yhtä kuin ensimmäisessä SELECT-lauseessa olevat sarakkeet.
Alla olevassa esimerkissä käytetään alkuperäisiä tauluja:
Employees_China:
E_ID | E_Name |
---|---|
01 | Zhang, Hua |
02 | Wang, Wei |
03 | Carter, Thomas |
04 | Yang, Ming |
Employees_USA:
E_ID | E_Name |
---|---|
01 | Adams, John |
02 | Bush, George |
03 | Carter, Thomas |
04 | Gates, Bill |
Käytä UNION -komentoa
Esimerkki
Luettelo kaikista Kiinassa ja Yhdysvalloissa eri nimillä olevista työntekijöistä:
SELECT E_Name FROM Employees_China UNION SELECT E_Name FROM Employees_USA
Tulokset
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Gates, Bill |
Huomautus:Tämä komento ei voi lukea kaikkia Kiinassa ja Yhdysvalloissa työskenteleviä työntekijöitä. Yllä olevassa esimerkissä meillä on kaksi samalla nimellä olevaa työntekijää, joista vain yksi on lueteltu. UNION -komento valitsee vain erilaiset arvot.
UNION ALL
UNION ALL -komento ja UNION -komento ovat lähes yhtä arvoisia, mutta UNION ALL -komento lukee kaikki arvot.
SQL Lausunto 1 UNION ALL SQL Lausunto 2
Käytä UNION ALL -komentoa
Esimerkki:
Luettelo kaikista Kiinassa ja Yhdysvalloissa työskentelevistä työntekijöistä:
SELECT E_Name FROM Employees_China UNION ALL SELECT E_Name FROM Employees_USA
Tulokset
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Carter, Thomas |
Gates, Bill |
- Edellinen sivu SQL Full Join
- Seuraava sivu SQL Select Into