集合操作就是将两个或者多个 sql 查询的结果合并成复合查询。常见的集合操作有UNION(并运算)、UNION ALL、INTERSECT(交运算)和MINUS(差运算)。

UNION

  UNION 运算可以将多个查询结果集相加,形成一个结果集, 其结果相当于集合运算的并运算. UNION 可以将第一个查询结果的所有行与第二个结果集的所有行进行相加,行切消除所有的重复行.语法如下:

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition] UNION SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

例子: 查询名字以 S 或者 M 开始的员工所有信息

 select *
from emp
where ename like 'S%'
UNION
select *
from emp
where ename like 'M%';

UNION ALL

  UNION ALL 的作用和 UNION 的作用极为相似不同之处就是形成的结果集包含其重复的部分。

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition] UNION ALL SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

例子: 查询名字以 S 结尾或者 M 开始的员工所有信息

 select *
from emp
where ename like '%R'
UNION ALL
select *
from emp
where ename like 'M%';

INTERSECT

  INTERSECT 也用于对两个集合进行操作,与之不同的是用于取交集预算。语法如下:

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition] INTERSECT SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

例子: 查询名字以 R 结尾并且 M 开始的员工所有信息

select *
from emp
where ename like '%R'
INTERSECT
select *
from emp
where ename like 'M%';

MINUS

  MINUS 用于查询两个集合的差集,也就是说该运算用于返回所有从第一个查询中返回,但是没有在第二个查询中返回的记录。语法如下:

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition] MINUS SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

例子:查询名字以 R 结尾但是不以 M 开始的员工所有信息

select *
from emp
where ename like '%R'
MINUS
select *
from emp
where ename like 'M%';

orcale 之 集合操作的更多相关文章

  1. Oracle视图,序列及同义词、集合操作

    一.视图(重点) 视同的功能:一个视图其实就是封装了一个复杂的查询语句.1.创建视图的语法:CREATE VIEW 视图名称 AS 子查询 范例:创建一个包含了20部门的视图CREATE VIEW e ...

  2. 函数式Android编程(II):Kotlin语言的集合操作

    原文标题:Functional Android (II): Collection operations in Kotlin 原文链接:http://antonioleiva.com/collectio ...

  3. JAVASE02-Unit05: 集合操作 —— 查找表

    Unit05: 集合操作 -- 查找表 使用该类测试自定义元素的集合排序 package day05; /** * 使用该类测试自定义元素的集合排序 * @author adminitartor * ...

  4. JAVASE02-Unit04: 集合框架 、 集合操作 —— 线性表

    Unit04: 集合框架 . 集合操作 -- 线性表 操作集合元素相关方法 package day04; import java.util.ArrayList; import java.util.Co ...

  5. oracle之集合操作函数---minus、union、intersect

    集合操作符专门用于合并多条select语句的结果,包括:UNION,UNION ALL,INTERSECT,MINUS.当使用集合操作函数时,需保证数据集的字段数据类型和数目一致. 使用集合操作符需要 ...

  6. Scala集合操作

    大数据技术是数据的集合以及对数据集合的操作技术的统称,具体来说: 1.数据集合:会涉及数据的搜集.存储等,搜集会有很多技术,存储技术现在比较经典方案是使用Hadoop,不过也很多方案采用Kafka.  ...

  7. Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...

  8. Python 集合操作

    1.集合操作 集合是一个无序的,不重复的数据组合, 他的主要作业如下. 1.去重,把一个列表变成集合,就自动去重了 2.关系测试,测试两组数据之前的交集.差集.并集等关系 list_1 = [1,4, ...

  9. Python学习笔记-Day3-set集合操作

    set集合,是一个无序且不重复的元素集合.定义方式类似字典使用{}创建 目前我们学过的数据类型: 1.字符串(str),2.整型(int),3.浮点型(float),4,列表(list) 5.元组(t ...

随机推荐

  1. Mysql的备份,权限与日志

    1>Mysql的数据备份    mysqldump 工具 --single-transaction 该选项导出数据之前提交一个BEGIN SQL语句,不会阻塞任何应该程序而且能保证导出数据时的一 ...

  2. VS 和Visual Assist X快捷键(转)

    Visual Assist X 最有用的快捷键 1.Alt + G: 在定义与声明之间互跳. 2.Alt + O: 在.h与.cpp之间互跳.(O是字母O,不是数字零) 3.Alt + Shift + ...

  3. docker 命令大全

    http://www.runoob.com/docker/docker-command-manual.html

  4. ES6——介绍

    什么是ES6? ECMAScript 6.0 (简称ES6)是继ECMAScript 5.1 之后 JavaScript 语言的下一代标准,发布在2015年6月.他的目标,是使得 JavaScript ...

  5. OO 抽象方法与虚方法的区别

     抽象方法与虚方法的区别 抽象方法与虚方法的区别: 一.抽象方法: 1.只能在抽象类中定义: 2.不能有方法的实现:(方法体)[因为抽象类无法实例化,所以抽象方法没有办法被调用,也就是说抽象方法永远不 ...

  6. Android源码:(一) 安卓2.1到4.4操作系统通用的Actionbar实现的tab导航例子。

    说一下我在完成这个例子之前的尝试吧 一,修改“actionbarsherlock”的导航例子.我在实现这个例子之前,尝试过“actionbarsherlock”,修改它的一个tab导航的例子,修改成功 ...

  7. python 调试器

    pdb https://www.zhihu.com/question/21572891 https://zhuanlan.zhihu.com/p/43846098

  8. jquery.nav.js定位导航滚动插件

    jQuery.nav.js插件代码: /* * jQuery One Page Nav Plugin * http://github.com/davist11/jQuery-One-Page-Nav ...

  9. bzoj1800飞行棋

    题目链接 简单模拟 真的不敢相信ahoi09年的题竟然是这个难度 首先,一个必须要知道的定理是:圆上只有直径所对的圆周角是直角. 然后就很显然了, 只有两条不重合的直径上的四个点才能组成一个矩形, 所 ...

  10. ubuntu14.04部署kickstart

    转自:http://www.mamicode.com/info-detail-1646465.html kickstart用于在内网自动安装系统. 使用pxe安装系统需要安装dhcp,tftp,htt ...