Sql学习第一天——SQL UNION 和 UNION ALL 操作符认识
关于SQL UNION 操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
注意:
1.UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
2.UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。
SQL UNION 语法(结果集没有重复值):
代码如下:
SELECT s FROM table1
UNION
SELECT s FROM table2
SQL UNION ALL 语法(结果集有重复的值):
代码如下:
SELECT s FROM table1
UNION ALL
SELECT s FROM table2
例子表:
表一(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
UNION
SELECT E_Name FROM Employees_USA
结果如下(去除了重复数据):
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Gates, Bill |
关于UNION ALL:
代码如下:
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 |
相关推荐
-
sql Union和Union All的使用方法
UNION的一个限制是两个 SQL 语句所产生的栏位需要是同样的资料种类.另外,当我们用 UNION这个指令时,我们只会看到不同的资料值 (类似 SELECT DISTINCT). union只是将两个结果联结起来一起显示,并不是联结两个表 UNION 的语法如下: [SQL 语句 1] UNION [SQL 语句 2] 假设我们有以下的两个表格, Store_Information 表格 store_name Sales Date Los Angeles $1500 Jan-05-1999 S
-
SQL语句之Union和Union All的用法
SQL中Union和Join语句非常类似,但是Union有一个限制条件:两个 SQL 语句所产生的栏位需要是同样的资料种类,最后的结果会看到不同的资料值. 格式: [SQL 语句 1] UNION [SQL 语句 2] 例如: 表store_info 和表internet_sales 使用Union语句: 复制代码 代码如下: SELECT Date FROM Store_Info UNION SELECT Date FROM Internet_Sales 结果: 或: 复制代码 代码如下: S
-
sqlserver Union和SQL Union All使用方法
SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必须相同. SQL UNION 语法SELECT column_name(s) FROM table_name1UNIONSELECT column_name(s) FROM table_name2 注释:默认地,UNION 操作符选取不同的值,即UNION是去了重
-
sql 查询结果合并union all用法_数据库技巧
复制代码 代码如下: --合并重复行 select * from A union select * from B --不合并重复行 select * from A union all select * from B 按某个字段排序 --合并重复行 select * from ( select * from A union select * from B) AS T order by 字段名 --不合并重复行 select * from ( select * from A union all se
-
MySQL中使用or、in与union all在查询命令下的效率对比
OR.in和union all 查询效率到底哪个快? 网上很多的声音都是说union all 快于 or.in,因为or.in会导致全表扫描,他们给出了很多的实例. 但真的union all真的快于or.in? EXPLAIN SELECT * from employees where employees.first_NAME ='Georgi' UNION ALL SELECT * from employees where employees.first_NAME ='Bezalel' 这条语
-
Mysql联合查询UNION和UNION ALL的使用介绍
一.UNION和UNION ALL的作用和语法 UNION 用于合并两个或多个 SELECT 语句的结果集,并消去表中任何重复行.UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必须相同.SQL UNION 语法: 复制代码 代码如下: SELECT column_name FROM table1UNIONSELECT column_name FROM table2 注释:默认地,UNION 操作符选取不同的值.如
-
Sql学习第一天——SQL UNION 和 UNION ALL 操作符认识
关于SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 注意: 1.UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必须相同. 2.UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名. SQL UNION 语法(结果集没有重复值): 复制代码 代码如下: SELECT s FROM table1 UNION SELECT s FROM t
-
Sql学习第一天——SQL 将变量定义为Table类型(虚拟表)
SQL 将变量定义为Table类型 在平时定义sql语句中的变量时通常我们定义的都是像char,varchar,nvarchar,int........,那如何让变量作为一个像虚拟表一样呢,其实很简单. 基本语法: 复制代码 代码如下: declare @t table(列名1 列的数据类型1 , 列名2 列的数据类型2 , ...............) insert into @t(列名1 ,列名2 ,...............) values (...............) [c
-
Sql学习第一天——SQL 练习题(建表/sql语句)
题目:来自Madrid且订单数少于3的消费者 建表: 复制代码 代码如下: set nocount on --当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数).当 SET NOCOUNT 为 OFF 时,返回计数 use SY GO if object_Id('dbo.Orders') is not null drop table dbo.Orders GO if object_Id('dbo.Customers') is not nu
-
SQL学习笔记一SQL基础知识
常用字段类型bit(0和1),datetime,int,varchar,nvarchar(可能含有中文用nvarchar) Varchar,nvarchar和char(n)的区别char(n)不足长度n的部分用空格填充. SQL语句中,字符串用单引号. SQL语句大小写不敏感.不敏感是指SQL的关键字,字符串值还是敏感的. 简单的INSERT语句 INSERT INTO Person(Id,Name,Age) VALUES(1,'Jim',20) 常用int和uniqueidentifier做主
-
Sql学习第二天——SQL DML与CTE概述
DML (Data Manipulation Language) 与 CTE (Common Table Expression) 今天看书时遇到的两个缩写,不知道其含义,于是就百度了一下,特地在此记录下来,以便于下次复习使用. 关于DML (Data Manipulation Language): 数据操纵语言,用户能够查询数据库以及操作已有数据库中的数据的计算机语言.具体是指是UPDATE更新.INSERT插入.DELETE删除. 关于CTE (Common Table Expression)
-
带例子详解Sql中Union和Union ALL的区别
目录 前言 提前准备 测试 Union Union ALL Union Union All union Union All 最后 前言 一段时间没有用Union和Union,再用的时候忘了怎么用了...所以做一篇文章来记录自己学Union和Union的经历. 提前准备 在Sql Server 创建两张表,下面是创建表sql语句. create table Student1( Id varchar(50) not null, Name varchar(50) not null, Age int n
-
sql学习之CASE WHEN THEN ELSE END的用法
超强:SQL命令中的case...when...then...else...end条件查询(不同于where) 与 类型转换的用法 case...when...then...else...end,是在from前面,可以改变记录中某字段的值,不能决定是否显示该记录: where,是在from后面,不可以改变记录中某字段的值,但可以决定是否显示该记录. case...when...then...else...end,可用于对同一记录的多个字段求和,带分支判断. 另外,对字段判断和处理,往往需要强制类
-
sql语句优化之SQL Server(详细整理)
MS SQL Server查询优化方法 查询速度慢的原因很多,常见如下几种 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,
随机推荐
- Ajax异步上传文件实例代码分享
- 浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
- Prototype最新版(1.5 rc2)使用指南(1)
- 30个最佳jQuery Lightbox效果插件分享
- Win10安装Linux子系统图文教程
- IOS swift中的动画的实例详解
- 完美实现wordpress禁止文章修订和自动保存的方法
- php获取mysql版本的几种方法小结
- mysql中关于Myisam_recover自动修复的使用方法
- Android Studio项目中导入开源库的方法
- 用jquery写的一个万年历(自写)
- 深入理解spring的AOP机制原理
- Mysql 5.6添加修改用户名和密码的方法
- C#和JavaScript实现交互的方法
- laravel开发中跨域的解决方案
- VUE 使用中踩过的坑
- vue获取dom元素注意事项
- Python安装与基本数据类型教程详解
- 如何在java中正确使用注释
- 初识Spark入门