Vrstni red združitve po sintaksi poizvedbe/uporabi izjave v zbirki podatkov MySQL

Uporaba sintakse/stavka poizvedbe UNION ORDER BY v zbirki podatkov MySQL

MySQL operater UNION

Ta vadnica vas seznani s sintakso in primeri operatorja MySQL UNION.

opis

Operator MySQL UNION se uporablja za združevanje rezultatov dveh ali več stavkov SELECT v en niz rezultatov.Več stavkov SELECT odstrani podvojene podatke.

slovnica

Format sintakse operaterja MySQL UNION:

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

参数

  • izraz1, izraz2, ... izraz_n: Stolpec za pridobitev.
  • mize: Podatkovna tabela za pridobitev.
  • KJE pogoji: Izbirno, kriteriji iskanja.
  • IZRAZIT: Po želji odstranite podvojene podatke iz niza rezultatov.Operator UNION je privzeto odstranil podvojene podatke, tako da modifikator DISTINCT ne vpliva na rezultat.
  • VSE: Izbirno, vrne vse nize rezultatov, vključno z dvojniki.

demo baza podatkov

V tej vadnici bomo uporabili vzorčno bazo podatkov chenweiliang.

Tu so podatki iz tabele »Spletna mesta«:

mysql> SELECT * FROM Websites;
+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 陈沩亮博客      | http://www.chenweiliang.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

Tu so podatki za APP "aplikacije":

mysql> SELECT * FROM apps;
+----+------------+-------------------------+---------+
| id | app_name   | url                     | country |
+----+------------+-------------------------+---------+
|  1 | QQ APP     | http://im.qq.com/       | CN      |
|  2 | 微博 APP | http://weibo.com/       | CN      |
|  3 | 淘宝 APP | https://www.taobao.com/ | CN      |
+----+------------+-------------------------+---------+
3 rows in set (0.00 sec)

 


Primerek SQL UNION

Naslednji stavek SQL izbere vse različne države (samo različne vrednosti) iz tabel »Spletna mesta« in »aplikacije« :

primer

SELECT country FROM Websites
UNION
SELECT country FROM apps
ORDER BY country;
 
注释:UNION ni mogoče uporabiti za seznam vseh držav v obeh tabelah.Če so nekatera spletna mesta in aplikacije iz iste države, bo vsaka država navedena samo enkrat. UNION samo izbira različne vrednosti.Za izbiro podvojenih vrednosti uporabite UNION ALL!

Primerek SQL UNION ALL

Naslednji stavek SQL uporablja UNION ALL za izbiro vseh držav (vključno s podvojenimi vrednostmi) iz tabel »Spletna mesta« in »aplikacije« :

primer

SELECT country FROM Websites
UNION ALL
SELECT country FROM apps
ORDER BY country;

 


SQL UNION ALL z WHERE

Naslednji stavek SQL uporablja UNION ALL za izbiro vseh podatkov za Kitajsko (CN) iz tabel »Spletna mesta« in »aplikacije« (vključno s podvojenimi vrednostmi):

primer

SELECT country, name FROM Websites
WHERE country='CN'
UNION ALL
SELECT country, app_name FROM apps
WHERE country='CN'
ORDER BY country;

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Pomaknite se na vrh