MySQL的UNION和UNION ALL 操作符
UNION和UNION ALL 操作符 都是合并SELECT语句的结果集,不同的是,UNION是合并不同的结果集,重复的值不会合并;UNION ALL是合同所有的结果集,重复的值也会合并
另外:UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名
UNION 语法
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
UNION ALL 语法
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
示例:
表Employees_China:
表Employees_USA:
使用 UNION 命令
SELECT E_Name FROM Employees_China
UNION
SELECT E_Name FROM Employees_USA
结果
注释:在上面的例子中,我们有两个名字相同的雇员,他们当中只有一个人被列出来了。UNION 命令只会选取不同的值。
使用 UNION ALL 命令
UNION ALL 命令和 UNION 命令几乎是等效的,不过 UNION ALL 命令会列出所有的值。
SELECT E_Name FROM Employees_China
UNION ALL
SELECT E_Name FROM Employees_USA
结果