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

create table test1
(
name varchar(10),
sex varchar(10),
);insert into test1 values('test','female');
insert into test1 values('test1','female');
insert into test1 values('test1','female');
insert into test1 values('test11','female');
insert into test1 values('test111','female');

//创建表2

create table test2
(
name varchar(10),
sex varchar(10),
);
insert into test1 values('test','female');
insert into test1 values('test2','female');
insert into test1 values('test2','female');
insert into test1 values('test22','female');
insert into test1 values('test222','female');

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

select * from test1 minus select * from test2;结果:NAME SEX
---------- ----------
test1 female
test11 female
test111 female
-----------------------------------------------------------select * from test2 minus select * from test1;结果:NAME SEX
---------- ----------
test2 female
test22 female
test222 female

结论:Minus返回的总是左边表中的数据,它返回的是差集。注意:minus有剃重作用

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

性能比较:

SELECT order_id FROM made_orderMINUSSELECT order_id FROM charge_detail1.14 secSELECT a.order_id FROM made_order aWHERE NOT exists (SELECT order_idFROM charge_detailWHERE order_id = a.order_id)18.19 secSELECT order_id FROM made_orderWHERE order_id NOT in (SELECT order_idFROM charge_detail)20.05 sec

还有其它一下关键字:
INTERSECT (交集)
UNION ALL 并集

转载于:https://www.cnblogs.com/Kconnie/p/3968269.html

oracle取差值集合相关推荐

  1. oracle 查询差值,oracle取差值集合

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

  2. mysql 取差值_MySQL计算相邻两行某列差值的方法

    简述 博主最近因工作任务缠身,都无暇顾及到我的这片自留地了.前段时间稍有空闲,花了较多的精力学习<啊哈算法>,从中学习到很多之前没有太注重的内容,收益颇丰.但是这些算法题目还没有看完,等后 ...

  3. mysql同一个表,两个数字取差值

    select s1-s2 from (select time as s1 from info_202104 where id = 117) as table1,(select time as s2 f ...

  4. timestamp(6) oracle计算差值_Oracle 计算两个时间的差值

    --天的间隔 SELECT FLOOR(SYSDATE - TO_DATE('20110805', 'yyyyMMdd')) FROM DUAL; --获得相隔时间的相差天数 SELECT CEIL( ...

  5. mysql 取差值_mysql计算两条数据差值,求大神解答

    1.创建3张表: CREATE TABLE `t1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `warter` int(11) DEFAULT NULL, `r ...

  6. java oracle查询结果list取数,Oracle函数返回Table集合

    Oracle table()函数查询函数返回的结果集 2015年12月13日 22:42:51 warrenjiang 阅读数:7452 版权声明:本文为博主原创文章,未经博主允许不得转载. http ...

  7. mysql取最早和最晚时间_SQL Server 按日期选择最晚日期与最早日期对应的数的差值...

    感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!表结构如下 number date 8 2009/1/11 2:00 7 2009/1/11 5:00 6 2009/1/11 ...

  8. Oracle数据库Timestamp数据差值计算Sql语句

    今天的工作中遇到一个问题,需要计算数据库中两个时间字段的差值,字段类型是timestamp,将字段直接相减,会得到timestamp类型的结果值,不是我想要的number类型的值.在网上找了一些方法, ...

  9. CV03-双线性差值pytorch实现

    一.双线性差值 1.1 公式 在理解双线性差值(Bilinear Interpolation)的含义基础上,参考pytorch差值的官方实现注释,自己实现了一遍. 差值就是利用已知点来估计未知点的值. ...

最新文章

  1. 从上市公司数据读懂我国新兴产业发展态势
  2. Android -- ADT变化aarLint
  3. linux centos yum 报错 获取GPG密钥失败 Errno 14
  4. matlab 摄像头操作
  5. [转][Timer学习]wall time和monotonic time
  6. [Github项目]基于PyTorch的深度学习网络模型实现
  7. java gui 连接mysql数据库
  8. jstat gc各参数含义
  9. html5 canvas系列教程-像素操作(反色,黑白,亮度,复古,蒙版,透明)
  10. 《潜伏在办公室》 作者:陆琪
  11. CIC滤波器设计原理总结
  12. cas入门之:cas 4 如何以http形式发布
  13. 聚类分析在SPSS中的应用
  14. 如何设计一个网络程序
  15. 牛客网C++开发面试经验汇总
  16. cnavas手绘图形库 : rough.js
  17. TYVJ P1061 [Mobile Service]
  18. oeasy教您玩转linux010206toilet
  19. 吃内存狂魔?微信官方工具来了:深度清理缓存
  20. Fairplay之 generating FairPlay content key request on iOS after 14.6

热门文章

  1. github 如何设置项目的语言显示
  2. 【小松教你手游开发】【unity实用技能】给每个GameObject的打开关闭加上一个渐变...
  3. DenyHosts 加固centos系统安全
  4. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示...
  5. 常用css属性集(持续更新…)
  6. 使用Jmeter对mysql进行性能测试入门
  7. Windows 7操作系统使用移动硬盘快速安装
  8. 虚拟机四种网络连接模式比较
  9. 好像博问不能回复了,看似是某个脚本错误阻止了提交。可有此事?
  10. TCP三次握手及四次挥手详解