Порядок объединения по синтаксису запроса/использованию инструкции в базе данных MySQL

Использование синтаксиса запроса UNION ORDER BY в базе данных MySQL.

MySQL СОЮЗ оператора

Этот учебник знакомит вас с синтаксисом и примерами оператора 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     |
+----+---------------+---------------------------+-------+---------+

Вот данные для приложения «приложения»:

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-запрос выбирает все уникальные страны (только уникальные значения) из таблиц "Websites" и "apps" :

Пример

SELECT country FROM Websites
UNION
SELECT country FROM apps
ORDER BY country;
 
注释:UNION нельзя использовать для перечисления всех стран в обеих таблицах.Если некоторые веб-сайты и приложения находятся в одной стране, каждая страна будет указана только один раз. UNION просто выбирает разные значения.Пожалуйста, используйте UNION ALL, чтобы выбрать повторяющиеся значения!

SQL UNION ВСЕ экземпляр

В следующем SQL-запросе используется оператор UNION ALL для выбора всех стран (включая повторяющиеся значения) из таблиц "Websites" и "apps" :

Пример

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

 


SQL UNION ALL с WHERE

В следующем SQL-запросе используется оператор UNION ALL для выбора всех данных по Китаю (CN) из таблиц "Websites" и "apps" (включая повторяющиеся значения):

Пример

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 в базе данных MySQL», опубликованная в блоге Чен Вэйляна ( https://www.chenweiliang.com/ ), окажется для вас полезной.

Не стесняйтесь делиться ссылкой на эту статью: https://www.chenweiliang.com/cwl-475.html

Чтобы раскрыть еще больше скрытых трюков🔑, присоединяйтесь к нашему каналу в Telegram!

Поделитесь и поставьте лайк, если вам понравилось! Ваши репосты и лайки — наша постоянная мотивация!

 

发表 评论

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

Наверх