UNION、EXCEPT和INTERSECT操作查询结果
对查询结果进行合并、剔除、取重操作可以通过UNION、EXCEPT和INTERSECT实现
任意一种操作都要满足以下两个条件:
1.字段的数量和顺序一致
2.对应字段的数据类型相兼容
一、UNION
类似集合的并集运算
示例:下面两个表,查询拥有银行存款账号或贷款账号的客户姓名
表Depositor:
Customer_name Acc_num
1 Nora 101
2 Robin 103
3 James 107
4 Jennifer 109
表Borrower:
Customer_name Loan_num
1 Nora 301
2 Robin 305
3 James 306
4 Jenne 308
无[ALL]修饰:
SELECT Customer_name FROM Depositor
UNION
SELECT Customer_name FROM Borrower
查询结果:
Customer_name
1 James
Jenne
Jennifer
Nora
Robin
Tom
有[ALL]修饰:
SELECT Customer_name FROM Depositor
UNION ALL
SELECT Customer_name FROM Borrower
查询结果:
Customer_name
1 Nora
Robin
James
Jennifer
Tom
Nora
Robin
James
Jenne
二、EXCEPT
类似于集合的减法,从前一个表中剔除两个表中相同的记录。
示例:还是基于上文两个表,查询只有银行存款账号而没有贷款账号的客户姓名
SELECT Customer_name FROM Depositor
EXCEPT
SELECT Customer_name FROM Borrower
查询结果:
Customer_name
1 Jennifer
三、INTERSECT
类似于集合的交集运算,选出两个表中相同的记录
示例:同样基于上文的两个表,查询既有银行存款账号又有贷款账号的客户信息
SELECT Customer_name FROM Depositor
INTERSECT
SELECT Customer_name FROM Borrower
查询结果:
Customer_name
1 James
Nora
Robin
UNION、EXCEPT和INTERSECT操作查询结果的更多相关文章
- LINQ 之Union All/Union/Intersect操作
闪存 首页 新随笔 管理 订阅 Union All/Union/Intersect操作 适用场景:对两个集合的处理,例如追加.合并.取相同项.相交项等等. Concat(连接) 说明:连接不同 ...
- Union All/Union/Intersect操作
Union All/Union/Intersect操作 适用场景:对两个集合的处理,例如追加.合并.取相同项.相交项等等. Concat(连接) 说明:连接不同的集合,不会自动过滤相同项:延迟. 1. ...
- Oracle中的Union、Union All、Intersect、Minus
Oracle中的Union.Union All.Intersect.Minus 众所周知的几个结果集集合操作命令,今天详细地测试了一下,发现一些问题,记录备考. 假设我们有一个表Student,包括 ...
- 集合运算—union(并集)、intersect(交集)和except(差集)
一.集合运算的基本格式是: 集合查询1 <集合运算> 集合查询2 [order by ...] 二.集合运算符是对两个集合操作的,两个集合必须具有相同的列数,列具有相同的数据类型(至少能隐 ...
- Oracle中的Union、Union All、Intersect、Minus[转]
众所周知的几个结果集集合操作命令,今天详细地测试了一下,发现一些问题,记录备考. 假设我们有一个表Student,包括以下字段与数据: drop table student; create table ...
- Union、Union All、Intersect、Minus用法和区别
假设我们有一个表Student,包括以下字段与数据: [c-sharp] view plain copydrop table student; create table student ( ...
- Union、Union All、Intersect、Minus
转自:http://www.2cto.com/database/201208/148795.html Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序: Union All: ...
- 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句
如题: 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句不是一条关联查询语句. 例如: $list = $db->relation(true) ...
- MySQL查询in操作 查询结果按in集合顺序显示_Mysql_脚本之家
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
随机推荐
- java - import *
以前看过很多视频,现在发觉很多讲师讲的有些地方是错的,在这里就说一下 import *,例如: import java.util.*的时候,表示的是将文件中使用到的类(而不是全部类)导入,例如在imp ...
- (转)iOS被开发者遗忘在角落的NSException-其实它很强大
转载自 http://www.jianshu.com/p/05aad21e319e iOS被开发者遗忘在角落的NSException-其实它很强大 字数597 阅读968 评论4 喜欢28 NSExc ...
- PL/SQL常见设置--Kevin的专栏
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- html-----006
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- python细节
1.assert 断言语句,可判断一句话真假,若为假会抛出AssertionError. eg. assert 1==1 assert 1==2则AssertionError 2.单引号双引号 ...
- 学习笔记-记ActiveMQ学习摘录与心得(二)
上个周末被我玩过去了,罪过罪过,现在又是一个工作日过去啦,居然有些烦躁,估计这几天看的东西有点杂,晚上坐下来把自己首要工作任务总结总结.上篇学习博客讲了ActiveMQ的特性及安装部署,下面先把我以前 ...
- frameset标签代码实现网站跳转
js代码1: document.writeln("<frameset rows=\"0, *\">"); document.writeln(&quo ...
- python使用pyapns进行ios推送消息
Pyapns 提供了通用的Apple Push Notification Service (APNS).该解决方案使用了开源的Twisted server,支持原生的Python和Ruby API. ...
- iOS: 学习笔记, Swift名字空间
在Swift中, 名字空间是用class(extension)嵌套来实现的, 下面用一个简单例子来进行展示 // // main.swift // SwiftNameSpace // // Creat ...
- Linux Kernel Makefile Test
一.本文说明 本文为linux内核Makefile整体分析的续篇,是依据Linux内核Makefile体系的主要内容编写一个简要的测试工程.Linux内核Makefile体系就好像一只“大鸟”,而这篇 ...