union all   union

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。

CREATE TABLE Employees_China(
   E_ID   INT              NOT NULL,
    E_Name  CHAR (25)              NOT NULL
);
 
CREATE TABLE Employees_USA(
   E_ID   INT              NOT NULL,
    E_Name  CHAR (25)              NOT NULL
);

INSERT INTO Employees_China (E_ID,E_Name) VALUES(1,'Zhang, Hua');
INSERT INTO Employees_China (E_ID,E_Name) VALUES(2, 'Wang, Wei');
INSERT INTO Employees_China (E_ID,E_Name) VALUES(3,'Carter, Thomas');
INSERT INTO Employees_China (E_ID,E_Name) VALUES(4,'Yang, Ming');
INSERT INTO Employees_USA (E_ID,E_Name) VALUES(1,'Adams, John');
INSERT INTO Employees_USA (E_ID,E_Name) VALUES(2,'Bush, George');
INSERT INTO Employees_USA (E_ID,E_Name) VALUES(3,'Carter, Thomas');
INSERT INTO Employees_USA (E_ID,E_Name) VALUES(4,'Gates, Bill');

mysql> select * from Employees_China;
+------+----------------+
| E_ID | E_Name         |
+------+----------------+
|    1 | Zhang, Hua     |
|    2 | Wang, Wei      |
|    3 | Carter, Thomas |
|    4 | Yang, Ming     |
+------+----------------+
4 rows in set (0.06 sec)

mysql> select * from Employees_USA;
+------+----------------+
| E_ID | E_Name         |
+------+----------------+
|    1 | Adams, John    |
|    2 | Bush, George   |
|    3 | Carter, Thomas |
|    4 | Gates, Bill    |
+------+----------------+
4 rows in set (0.00 sec)
 
1.
mysql> SELECT E_Name FROM Employees_China
    -> UNION
    -> SELECT E_Name FROM Employees_USA;
+----------------+
| E_Name         |
+----------------+
| Zhang, Hua     |
| Wang, Wei      |
| Carter, Thomas |
| Yang, Ming     |
| Adams, John    |
| Bush, George   |
| Gates, Bill    |
+----------------+
7 rows in set (0.06 sec)
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。

2.
mysql> SELECT E_Name FROM Employees_China
    -> UNION ALL
    -> SELECT E_Name FROM Employees_USA;
+----------------+
| E_Name         |
+----------------+
| Zhang, Hua     |
| Wang, Wei      |
| Carter, Thomas |
| Yang, Ming     |
| Adams, John    |
| Bush, George   |
| Carter, Thomas |
| Gates, Bill    |
+----------------+
8 rows in set (0.00 sec)

另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。

14.UNION 和 UNION ALL 操作符的更多相关文章

  1. SQL UNION 和 UNION ALL 操作符\SQL SELECT INTO 语句\SQL CREATE DATABASE 语句

    SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每 ...

  2. SQL UNION 和 UNION ALL 操作符

    SQL UNION 和 UNION ALL 操作符 SQL Full Join SQL Select Into SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结 ...

  3. UNION 和 UNION ALL 操作符

    SQL UNION 操作符 1.UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意:UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时 ...

  4. [转]SQL UNION 和 UNION ALL 操作符

    SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每 ...

  5. MySQL- SQL UNION 和 UNION ALL 操作符

    在数据库查询中我们常常遇到这样一种情况,想把两个子查询的结果合并在一起变成一条 sql 去执行而不是多个sql分次执行.只是后我们就可以使用 UNION 和 UNION ALL 操作符来操作了. SQ ...

  6. MySQL - UNION 和 UNION ALL 操作符

    UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SE ...

  7. SQL-W3School-高级:SQL UNION 和 UNION ALL 操作符

    ylbtech-SQL-W3School-高级:SQL UNION 和 UNION ALL 操作符 1.返回顶部 1. SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT ...

  8. 【转】Mysql联合查询union和union all的使用介绍

    Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...

  9. SQL的inner join、left join、right join、full outer join、union、union all

    主题: SQL的inner join.left join.right join.full outer join.union.union all的学习. Table A和Table B表如下所示: 表A ...

随机推荐

  1. BZOJ4560 [JLoi2016]字符串覆盖

    题意 字符串A有N个子串B1,B2,-,Bn.如果将这n个子串分别放在恰好一个它在A中出现的位置上(子串之间可以重叠) 这样A中的若干字符就被这N个子串覆盖了.问A中能被覆盖字符个数的最小值和最大值. ...

  2. [BZOJ]4034: [HAOI2015]树上操作

    [HAOI2015]树上操作 传送门 题目大意:三个操作 1:a,b,c b节点权值+c 2:a,b,c 以b为根的子树节点权值全部+c 3:a,b 查询b到根路径的权值和. 题解:树链剖分 操作1 ...

  3. FastAdmin Bootstrap-Table 分页列表 pageList 如何设置?

    FastAdmin Bootstrap-Table 分页列表 pageList 如何设置? FastAdmin 的 表格使用的是 Bootstrap-Table 组件,这个组件该有的功能他都有. 默认 ...

  4. BufferedInputStream与BufferedOutputStream

    BufferedInputStream是带缓冲区的输入流,默认缓冲区大小是8M,能够减少访问磁盘的次数,提高文件读取性能:BufferedOutputStream是带缓冲区的输出流,能够提高文件的写入 ...

  5. JavaWeb中验证码的实现

    在Web程序中,验证码是经常使用的技术之一.Web程序永远面临未知用户和未知程序的探测.为了防止恶意脚本的执行,验证码技术无疑是首选方案之一.本文将讨论如何在JSP和Servlet中使用验证码技术. ...

  6. Navicat for MySQL使用手记(下)--实现自动备份数据库

    五.备份和还原MySQL数据库 在数据库的管理中,备份和还原是必须做认真做的事情,如果疏忽或者做粗糙了,那么一旦数据库故障后果不堪设想,所以Navicat同样也有备份和还原的功能,相比较创建功能,其备 ...

  7. 【转】Jenkins+Ant+Jmeter自动化性能测试平台

    Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,,既然可以使用ant运行,那和hudson.jenkins集成就很方便了 ...

  8. innodb事务日志详解

    首先看InnoDB的缓存和文件的关系图如下: InnoDB事务日志功能介绍 InnoDB使用日志来减少提交事务时的开销.因为日志中已经记录了事务,就无须在每个事务提交时把缓冲池的脏块刷新(flush) ...

  9. tp5下通过composer实现日志记录功能

    tp5实现日志记录 1.安装 psr/log composer require psr/log 它的作用就是提供一套接口,实现正常的日志功能! 我们可以来细细的分析一下,LoggerInterface ...

  10. Linux学习笔记 -- Shell 数组

    定义 在Shell的世界里,我们只能定义一维数组. 定义数组的时候不需要指定长度,数组的下标从0开始; Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下: sh ...