OracleMinus关键字 //创建表1 create table test1 ( name varchar(10), sex varchar(10), age int ); insert into test1values('luxin','female',25); insert into test1 values('tom','female',26); insert into test1 values('mary1','male',27); insert i

Oracle Minus关键字

//创建表1

create table test1

(

name varchar(10),

sex varchar(10),

age int

);

insert into test1values('luxin','female',25);

insert into test1 values('tom','female',26);

insert into test1 values('mary1','male',27);

insert into test1 values('money','male',27);

insert into test1 values('tony','male',28);

insert into test1 values('tony1','male',19);

//创建表2

create table test2

(

name varchar(10),

sex varchar(10),

age int

);

insert into test2 values('luxin','female',25);

insert into test2 values('tom','female',26);

insert into test2 values('mary2','male',27);

insert into test2 values('money','male',27);

insert into test2 values('tony','male',28);

insert into test2 values('tony2','male',19);

-------------------------------------------

select * from test1minus select * from test2;

结果:

NAME SEX AGE

---------- ---------- ----------

mary1 male 27

tony1 male 19

-----------------------------------------------------------

select * from test2minus select * from test1;

结果:

NAME SEX AGE

---------- ---------- ----------

mary2 male 27

tony2 male 19

结论:Minus返回的总是左边表中的数据,它返回的是差集。

用表1-表2中的数据,如果相同,则去掉,否则返回表1中的数据。

==========================================================

今天在看数据集合时偶然看到了SQL有MINUS,可以达到相同的目的

具体如下:

SQL中的MINUS关键字

SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果中。如果有的话,那这一笔记录就被去除,而不会在最后的结果中出现。如果第二个SQL语句所产生的结果并没有存在于第一个SQL语句所产生的结果内,那这笔资料就被抛弃,其语法如下:

[SQL Segment 1]

MINUS

[SQL Segment 2]

其实简单的一句话就是找出第一条SQL查询的不在第二条SQL语句查询结果中的那些记录,并且要注意最后返回的结果集中,不同的记录只会被列出一次!

下面是我做的实验,很明显能够看出MINUS的效率,made_order共23万笔记录,charge_detail共17万笔记录

性能比较:

SELECT order_id FROM made_order

MINUS

SELECT order_id FROM charge_detail

1.14 sec

SELECT a.order_id FROM made_order a

WHERE NOT exists (

SELECT 1

FROM charge_detail

WHERE order_id = a.order_id

)

18.19 sec

SELECT order_id FROM made_order

WHERE order_id NOT in (

SELECT order_id

FROM charge_detail

)

20.05 sec

还有其它一下关键字:

INTERSECT (交集)

UNION ALL 并集

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

mysql oracle minus_Oracle Minus关键字相关推荐

  1. oracle中minus什么意思,Oracle Minus关键字

    Oracle Minus关键字 SQL中的MINUS关键字 SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 ...

  2. Oracle Minus关键字

    Oracle Minus关键字 SQL中的MINUS关键字 SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 ...

  3. Oracle Minus关键字 不包含 取差集

    Oracle Minus关键字 SQL中的MINUS关键字 SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 ...

  4. oracle not in minus,Oracle Minus关键字 不包含...

    Oracle Minus关键字 SQL中的MINUS关键字 SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 ...

  5. python数据库管理软件_数据库管理工具神器-DataGrip,可同时管理多个主流数据库[SQL Server,MySQL,Oracle等]连接 - Python社区...

    DataGrip :Jet Brains出品的一款数据库管理工具(没错,是Jet Brains出品,必属精品).DataGrip整合集成了当前主流数据库(如:SQL Server, MySQL, Or ...

  6. MySQL,Oracle系统学习,以及SQL语言-----数据库篇学习笔记

    Handouts MySQL和Oracle系统学习 一. 开篇立意(~~~~必看,有说明~~~~) 二. Oracle 篇 数据库存在之意义 基础概念(必须看,后面不会说明!!!) Oracle管理系 ...

  7. oracle中minus作的应用,Oracle minus用法详解及应用实例

    Oracle minus用法详解及应用实例 Oracle minus用法 "minus"直接翻译为中文是"减"的意思,在Oracle中也是用来做减法操作的,只不 ...

  8. 数据库管理工具神器-DataGrip,可同时管理多个主流数据库[SQL Server,MySQL,Oracle等]连接

    日常开发中少不了各种可视化数据库管理工具.如果需要同时能连接多种数据库,大家肯定都会想到 DBeaver.Navicat Premium.本文介绍另一个十分好用且强大的工具:DataGrip. Dat ...

  9. Oracle Start With关键字

    Oracle Start With关键字 前言 旨在记录一些Oracle使用中遇到的各种各样的问题. 同时希望能帮到和我遇到同样问题的人. Start With (树查询) 问题描述: 在数据库中, ...

  10. oracle增量 mysql_是否有任何mysql / Oracle函数给予增量号。基于另一列相似值的一列?...

    我有兴趣知道是否有任何MySQL / Oracle函数给增量号.在另一列相似的值的基础上的一列? 就像在我的下面的代码中,我有order_primary列,其中包含订单号.所以基于此我们可以确定有多少 ...

最新文章

  1. python删除字符串_Python3 - 删除字符串中不需要的字符
  2. 【机器学习-数据科学】第二节:ipython开发环境搭建以及pandas快速入门
  3. practical of programming 第二章 java的quick sort
  4. 让ie8按照ie7 的方式来进行解析
  5. 经典仿句100例_(完整版)精美句子仿写100例
  6. zebradesigner2教程_zebradesigner pro 2中文版-斑马条码打印机软件下载 附带安装教程 - 安下载...
  7. 数据大屏之跑马灯功能
  8. Flixel Dame 坦克大战(一)地图
  9. html5 图片命名,html5 css命名规范
  10. 【转载】面对酱紫的情况,肿么办哇?
  11. 关于 VB6 透明 PNG 图像生成的一个解决方案
  12. 尚融宝28-投资列表展示
  13. 企业内容管理(ECM)与文档管理的区别及其优势
  14. 纯干货!信贷行业电话销售员一定要掌握的电话沟通话术
  15. SpringBoot热部署方案
  16. Tailscale 开源版中文部署指南(支持无限设备数、自定义多网段 、自建中继等高级特性)...
  17. transforms.Normalize,计算数据量大数据集的像素均值(mean)和标准差(std)
  18. OpenGL学习脚印: 绘制一个三角形
  19. Spark零基础入门实战(一)Scala安装
  20. java调用插件_从任何java应用程序调用自己的eclipse插件方法

热门文章

  1. win7桌面上显示html,win7如何在桌面显示ie图标|win7在桌面显示ie图标两种方法
  2. 以数为本、谋求智变,联通大数据“跑步”进入发展新阶段!
  3. Java的依赖对象是什么意思_面向对象编程依赖注入详解
  4. 2024考研《艺术学概论》彭吉象|复习笔记(上篇)(1-6章)
  5. ADC转换速率kSPS定义
  6. WPS自动生成目录。
  7. android qq音乐无法连接网络连接,qq音乐不能播放_qq音乐为什么老是提示说歌曲无效或网络连接失败呢?...
  8. 亲测有效win10系统QQ音乐无法安装
  9. linux yum用法,Linux系统yum的使用与说明
  10. python实现C4.5