Справочник на статиите
Използване на синтаксис/израз на заявка за база данни UNION ORDER BY в MySQL
MySQL оператор UNION
Този урок ви запознава със синтаксиса и примерите за оператора MySQL UNION.
描述
Операторът MySQL UNION се използва за комбиниране на резултатите от два или повече израза SELECT в един резултатен набор.Множество оператори SELECT премахват дублирани данни.
граматика
Формат на синтаксиса на оператора MySQL UNION:
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [ALL | DISTINCT] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions];
参数
- израз1, израз2, ... израз_n: Колона за извличане.
- маси: Таблицата с данни за извличане.
- КЪДЕ условия: По избор, критерии за търсене.
- ОТЛИЧЕН: По желание премахнете дублиращите се данни от набора с резултати.Операторът UNION е дедупликирал данни по подразбиране, така че модификаторът DISTINCT няма ефект върху резултата.
- ВСИЧКО: По избор, връща всички набори от резултати, включително дубликати.
демо база данни
В този урок ще използваме примерната база данни на chenweiliang.
Ето данните от таблицата "Уебсайтове":
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 | +----+---------------+---------------------------+-------+---------+
Ето данните за APP "apps":
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
Следният SQL израз избира всички отделни държави (само отделни стойности) от таблиците „Уебсайтове“ и „Приложения“ :
Инстанция
SELECT country FROM Websites UNION SELECT country FROM apps ORDER BY country;
SQL UNION ALL екземпляр
Следният SQL оператор използва UNION ALL, за да избере всички държави (включително дублиращите се стойности) от таблиците „Уебсайтове“ и „Приложения“ :
Инстанция
SELECT country FROM Websites UNION ALL SELECT country FROM apps ORDER BY country;
SQL UNION ALL с WHERE
Следният SQL оператор използва UNION ALL, за да избере всички данни за Китай (CN) от таблиците „Уебсайтове“ и „Приложения“ (включително дублиращи се стойности):
Инстанция
SELECT country, name FROM Websites WHERE country='CN' UNION ALL SELECT country, app_name FROM apps WHERE country='CN' ORDER BY country;
Надяваме се, че статията „Union Order By Query Syntax/Statement Usage in MySQL Database“, споделена в блога на Чен Вейлианг ( https://www.chenweiliang.com/ ), ще ви бъде полезна.
Чувствайте се свободни да споделите линка към тази статия: https://www.chenweiliang.com/cwl-475.html
