Unia ordo per demanda sintakso/deklaruzo en MySQL-datumbazo

MySQL-datumbazoUnia ordo per demanda 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 sekva SQL-deklaro elektas ĉion el la "Retejoj" kaj "aplikoj" tabelojmalsamalando (nur apartaj valoroj):

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 sekva SQL-deklaro uzas UNION ALL por elekti el la tabeloj "Retejoj" kaj "aplikoj".ĉiujlando (ankaŭ havas duplikatajn valorojn):

ekzemplo

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

 


SQL UNIO ĈIUJ kun KIE

La sekva SQL-deklaro uzas UNION ALL por elekti el la tabeloj "Retejoj" kaj "aplikoj".ĉiujDatenoj por Ĉinio (CN) (ankaŭ kun duplikataj valoroj):

ekzemplo

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

Hope Chen Weiliang Blogo ( https://www.chenweiliang.com/ ) kunhavis "sindikatan ordon per demanda sintakso/deklaruzo en MySQL-datumbazo", kio estas helpema al vi.

Bonvenon dividi la ligon de ĉi tiu artikolo:https://www.chenweiliang.com/cwl-475.html

Bonvenon al la Telegram-kanalo de la blogo de Chen Weiliang por ricevi la plej novajn ĝisdatigojn!

🔔 Estu la unua ricevi la valoran "ChatGPT Content Marketing AI Tool Use Guide" en la ĉefa dosierujo de la kanalo! 🌟
📚 Ĉi tiu gvidilo enhavas grandegan valoron, 🌟Ĉi tio estas malofta ŝanco, ne maltrafu ĝin! ⏰⌛💨
Kunhavigu kaj ŝatu se vi ŝatas!
Via kundivido kaj ŝatoj estas nia kontinua instigo!

 

Lasu komenton

Via retpoŝta adreso ne estos publikigita. Bezonataj kampoj estas uzataj * Etikedo

rulumu al la supro