我是靠谱客的博主 魔幻水池,最近开发中收集的这篇文章主要介绍MySQL中 UNION 操作符,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.说明:

    UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。

2.语法:

SELECT file1, file2, ... file_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT file1, file2, ... file_n
FROM tables
[WHERE conditions];

注:参数说明:

(1)file1, file2, ... file_n: 要检索的列。

(2)tables: 要检索的数据表。

(3)WHERE conditions: 可选, 检索条件。

(4)DISTINCT: 可选,删除结果集中重复的数据。默认情况下 UNION 操作符已经删除了重复数据,所以 DISTINCT 修饰符对结果没啥影响。

(5)ALL: 可选,返回所有结果集,包含重复数据。

3.笔记:

UNION 语句:用于将不同表中相同列中查询的数据展示出来;(不包括重复数据)

UNION ALL 语句:用于将不同表中相同列中查询的数据展示出来;(包括重复数据)

使用形式如下:

SELECT 列名称 FROM 表名称 UNION SELECT 列名称 FROM 表名称 ORDER BY 列名称;
SELECT 列名称 FROM 表名称 UNION ALL SELECT 列名称 FROM 表名称 ORDER BY 列名称;

4.案例演示:UNION 语句:

(1)表一:表名:send

  id    | app_name   | alexa  | country  |
------+-------+---------+-------
   1    | 名字1       | 1      | USA     |
   2    | 名字2       | 13     | CN      |
   3    | 名字3       | 4689   | CN      |
   4    | 名字4       | 20     | CN      |
   5    | 名字5       | 3      | USA     |
   6    | 名字6       | 0      | IND     |

(2)表二:表名:app

| id | app_name   | country |
+----+------------+---------+
|  1 | 名字1      | CN      |
|  2 | 名字2      | CN      |
|  3 | 名字3      | CN      |

(3)从以上两个表中取不同的country列值:

SELECT country FROM send
UNION
SELECT country FROM app
ORDER BY country;

查询结果为:

+---------+
| country |
+---------+
| CN      |
| IND     |
| USA     |
+---------+

UNION ALL 语句:执行如下语句:

SELECT country FROM send
UNION ALL
SELECT country FROM app
ORDER BY country;

查询结果为:

+---------+
| country |
+---------+
| CN      |
| CN      |
| CN      |
| CN      |
| CN      |
| IND     |
| USA     |
| USA     |
| USA     |
+---------+

最后

以上就是魔幻水池为你收集整理的MySQL中 UNION 操作符的全部内容,希望文章能够帮你解决MySQL中 UNION 操作符所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部