Unia ordo per demanda sintakso/deklaruzo en MySQL-datumbazo

MySQL-datumbazo UNIO ORDER BY serĉsintakso/deklaruzo

MySQL UNION-funkciigisto

Ĉi tiu lernilo prezentas vin al la sintakso kaj ekzemploj de la MySQL UNION-funkciigisto.

Priskribo

La MySQL UNION-funkciigisto estas uzata por kombini la rezultojn de du aŭ pli da SELECT deklaroj en ununuran rezultan aron.Multoblaj SELECT deklaroj forigas duplikatajn datumojn.

gramatiko

MySQL UNION-funkciigisto sintaksa formato:

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

Parametro

  • esprimo1, esprimo2, ... esprimo_n: Kolumno por retrovi.
  • tabloj: La datumtabelo por preni.
  • KIE kondiĉoj: Laŭvola, serĉkriterioj.
  • DISTINTA: Laŭvole, forigu duplikatajn datumojn de la rezulta aro.La UNION-funkciigisto deduplikis datumojn defaŭlte, do la DISTINCT-modifilo havas neniun efikon al la rezulto.
  • ĈIUJ: Laŭvola, redonas ĉiujn rezultarojn, inkluzive de duplikatoj.

demo-datumbazo

En ĉi tiu lernilo, ni uzos la specimenan datumbazon chenweiliang.

Jen la datumoj de la tabelo "Retejoj":

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     |
+----+---------------+---------------------------+-------+---------+

Jen la datumoj por la "apo" APP:

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)

 


SQL UNION-instanco

La jena SQL-deklaro elektas ĉiujn apartajn landojn (nur apartajn valorojn) el la tabeloj "Retejoj" kaj "aplikaĵoj" :

ekzemplo

SELECT country FROM Websites
UNION
SELECT country FROM apps
ORDER BY country;
 
Notoj:UNION ne povas esti uzata por listigi ĉiujn landojn en ambaŭ tabeloj.Se iuj retejoj kaj programoj estas de la sama lando, ĉiu lando estos listigita nur unufoje. UNION simple elektas apartajn valorojn.Bonvolu uzi UNION ALL por elekti duplikatajn valorojn!

SQL UNION ĈIUJ kazo

La jena SQL-frazo uzas UNION ALL por elekti ĉiujn landojn (inkluzive de duobligitaj valoroj) el la tabeloj "Websites" kaj "apps" :

ekzemplo

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

 


SQL UNIO ĈIUJ kun KIE

La jena SQL-deklaro uzas UNION ALL por elekti ĉiujn datumojn por Ĉinio (CN) el la tabeloj "Retejoj" kaj "aplikaĵoj" (inkluzive de duobligitaj valoroj):

ekzemplo

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

Lasu komenton

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

Rulumu al Supro