Union和Union ALL的用法
2017-05-04 21:22
435 查看
首先,Union和UnionALL都是用来合并两个或两个以上Select SQL语句的操作符,
区别在于Union去重,而Union ALL会列出所有结果包括重复的。
下面来看看具体例子:
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。
SELECT E_Name FROM Employees_USA
[/code]
注释:这个命令无法列出在中国和美国的所有雇员。在上面的例子中,我们有两个名字相同的雇员,他们当中只有一个人被列出来了。UNION 命令只会选取不同的值。
UNION ALL 命令和 UNION 命令几乎是等效的,不过 UNION ALL 命令会列出所有的值。
SELECT E_Name FROM Employees_USA
[/code]
区别在于Union去重,而Union ALL会列出所有结果包括重复的。
下面来看看具体例子:
SQL UNION 操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
SQL UNION 语法
SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
SQL UNION ALL 语法
SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2
另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。
下面的例子中使用的原始表:
Employees_China:
E_ID | E_Name |
---|---|
01 | Zhang, Hua |
02 | Wang, Wei |
03 | Carter, Thomas |
04 | Yang, Ming |
Employees_USA:
E_ID | E_Name |
---|---|
01 | Adams, John |
02 | Bush, George |
03 | Carter, Thomas |
04 | Gates, Bill |
使用 UNION 命令
实例
列出所有在中国和美国的不同的雇员名:SELECT E_Name FROM Employees_China [code]UNION
SELECT E_Name FROM Employees_USA
[/code]
结果
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Gates, Bill |
UNION ALL
UNION ALL 命令和 UNION 命令几乎是等效的,不过 UNION ALL 命令会列出所有的值。SQL Statement 1 UNION ALL SQL Statement 2
使用 UNION ALL 命令
实例:
列出在中国和美国的所有的雇员:SELECT E_Name FROM Employees_China [code]UNION ALL
SELECT E_Name FROM Employees_USA
[/code]
结果
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Carter, Thomas |
Gates, Bill |
相关文章推荐
- Oracle基础——union与union all的用法与区别
- Union ,Union ALL的用法
- 九.Sql server中union, union all 的用法
- SAP HANA SQL语句UNION 和 UNION ALL的用法
- SQL中UNION和UNION ALL的详细用法
- 数据库union 和 union all的用法
- union与Union all的简单用法
- mysql 多表删除 和UNION 、UNION all的用法
- SQL语句之Union和Union All的用法
- Phalapi 中Union和Union All的用法
- union、union all的用法和区别
- Oracle中的Union、Union All、Intersect、Minus的用法
- Oracle中 union 和 union all 的用法和区别
- .Sql server中union, union all 的用法
- union,union all用法及区别
- 【oracle】union、union all、intersect、minus 的用法及区别
- SQL 中union 和union all的用法及其效率对比
- sql Union和Union All用法及区别(union where条件使用)
- UNION和UNION ALL的用法区别
- sql中exists,Intersect ,union 与union All的用法