首页 > 技术文章 > SQL——UNION (合并多个查询结果)

dersome 2021-04-07 11:36 原文

UNION

1、UNION 必须由两条或两条以上的 SELECT 语句组成。,语句之间用UNION关键字进行分隔。

2、UNION中的每个查询必须包含相同的列、表达式或聚集函数(不过各个列不需要以相同的次序列出)。

3、列数据类型必须兼容,类型不必完全相同,但是必须是DBMS可以隐含地转换类型。

4、UNION从查询结果集中自动去除重复行。

5、若需要每个条件的匹配行全部出现(包括重复行),则必须使用UNION ALL 而不是WHERE。

6、使用UNION的组合查询时可以应用不同的表。

7、在使用UNION组合查询时,只能使用一条ORDER BY 子句,它必须出现在最后一条SELECT语句之后,即对于结果集不存在用一种方式排序一部分,而又用另一种方式排序另一种部分的情况,因此不允许使用多条ORDER BY子句。

语法

1 SELECT 列名 FROM 表名1
2 UNION
3 SELECT 列名 FROM 表名2;

 

注意:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。

UNION ALL

UNION ALL 命令和 UNION 命令几乎是等效的,不过 UNION ALL 命令会列出所有的值。

语法

1 SELECT 列名 FROM 表名1
2 UNION ALL
3 SELECT 列名 FROM 表名2;

 

注意:UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。

 
转载于:https://blog.csdn.net/qq_36761831/article/details/83450110

推荐阅读