Порядок об'єднання за синтаксисом запиту/використанням оператора в базі даних MySQL

Використання синтаксису/операторів запиту 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 не впливає на результат.
  • ALL: Необов’язково, повертає всі набори результатів, включаючи дублікати.

демонстраційна база даних

У цьому підручнику ми будемо використовувати зразок бази даних 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;
 
注释:UNION не можна використовувати для переліку всіх країн в обох таблицях.Якщо деякі веб-сайти та програми належать до однієї країни, кожна країна буде вказана лише один раз. UNION просто вибирає різні значення.Будь ласка, використовуйте UNION ALL, щоб вибрати повторювані значення!

Екземпляр 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;

Сподіваємося, що стаття «Використання синтаксису/операторів за запитом у базі даних MySQL для впорядкування об’єднань», опублікована в блозі Ченя Вейляна ( https://www.chenweiliang.com/ ), буде вам корисною.

Не соромтеся поділитися посиланням на цю статтю: https://www.chenweiliang.com/cwl-475.html

Щоб розкрити більше прихованих хитрощів🔑, приєднуйтесь до нашого Telegram-каналу!

Поділіться та поставте лайк, якщо вам подобається! Ваші розповсюдження та вподобання — наша постійна мотивація!

 

发表 评论

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

Прокрутка до початку