not in 与not exists区别
1、对于not exists查询,内表存在空值对查询结果没有影响;对于not in查询,内表存在空值将导致最终的查询结果为空。
2、对于not exists查询,外表存在空值,存在空值的那条记录最终会输出;对于not in查询,外表存在空值,存在空值的那条记录最终将被过滤,其他数据不受影响。
eg: select * FROM customer a where not exists (select customer_no from bank_customer b where a.customer_no=b.customer_no );
select * from customer where customer_no is not null and customer_no not in (select customer_no from bank_customer where customer_no is not null);
以上两个 查询结果集相同
not in 与not exists区别相关推荐
- 软件测试mysql面试题:mysql中 in 和 exists 区别?
mysql中 in 和 exists 区别? mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询.一直大家都认为exist ...
- in、or、exists区别
in 和or区别: 如果in和or所在列有索引或者主键的话,or和in没啥差别,执行计划和执行时间都几乎一样. 如果in和or所在列没有 索引的话,性能差别就很大了.在没有索引的情况下,随着in或者o ...
- mysql 变量is null 和 not exists区别
问题: 使用游标遍历时,发现使用 select var into tmp where var=? 然后判断if tmp is null时,不能走完所有的遍历.经debug发现, 当var为空时,则跳出 ...
- Hive in exists 区别
IN适合于外表大而内表小的情况:EXISTS适合于外表小而内表大的情况. in /exists / left semi join 不会产生笛卡尔积 ! inner join可能会产生笛卡尔积! 1 ...
- mysql or的效率_Mysql比较exists与in以及or的效率分析
日常入坑 一直以为sql优化中in的效率一定比exists低,所以在一次接口中将原来的in改成了exists,自认为效率一定会比之前高,结果被狠狠打脸. b表的数据导入导致这个接口的查询极慢,需要5秒 ...
- 数据库:SQLServer中in和 exists函数用法笔记
今天给大家分享一下SQLServer中in和 exists 用法,希望能对大家有所帮助. 一.IN 用法 确定指定的值是否与子查询或列表中的数据相匹配. 1.1 语法格式 test_expressio ...
- 一直认为in,exists 不走索引,被同事鄙视了……
前言 最近,有一个业务需求,给我一份数据 A ,把它在数据库 B 中存在,而又比 A 多出的部分算出来.由于数据比较杂乱,我这里简化模型. 然后就会发现,我去,这不就是 not in ,not exi ...
- java静态方法和非静态方法的区别_史上最全阿里 Java 面试题总结
关注[ToBeTopJavaer],回复[答案],获取全套面试题答案,为明年的金三银四,做好充分的准备. JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗 ...
- java linest_不要再纠结in和exists——JAVA伪代码直白分析二者时间复杂度
> scoreList = select student_id from score where score>90;实际情况中,子查询未必是全表扫描. 如果是子查询是全表扫描,那么in的时 ...
- MySQL in、exists是否走索引
最近,有一个业务需求,给我一份数据 A ,把它在数据库 B 中存在,而又比 A 多出的部分算出来.由于数据比较杂乱,我这里简化模型. 然后就会发现,我去,这不就是 not in ,not exists ...
最新文章
- linux elf 文件加密
- 浅谈配置文件:spring-servlet.xml(spring-mvc.xml) 与 applicationContext.xml
- Android OpenSL ES 对象结构
- TypeScript 的 type predicates
- 依据imu姿态角计算z轴倾角_1. 姿态的表示方法
- 并发基础知识:死锁和对象监视器
- vs2015软件系统开源_特别版:2015年开源新闻
- 项目添加GPUImage
- 比较好玩的动态添加网页元素
- DenseNet稠密连接层
- android viewflipper 动态加载,Android开发之ViewFlipper自动播放图片功能实现方法示例...
- 如何查看APP ID
- E: 无法定位软件包
- 深度学习:行为识别综述
- MongoDB 之滴滴、摩拜都在用的索引-educoder上面的题目以及笔记
- 装X神器--Hacker Typer
- centos 6 php mysql_Centos 6安装完美搭建mysql、php、apache之旅
- current account(经常账户)
- 【零基础教学】Unet局域网联机的实现——最基础的Unity联网实现方式(2)
- API接口使用方法(封装好的电商平台)
热门文章
- 企业微信SCRM会员营销 您的私域流量池精细化运营平台
- php 判断中文和英文,php如何判断是中文还是英文
- EA游戏Battlefield 2(战地风云2) 单机地图简介
- wince tfp telnet
- java对七牛云文件的增删改查语句_七牛云导播
- 使用tftpd32.exe升级IPC
- ECMAScript标准命名
- 驾驶员理论考试系统的设计与实现(论文+源码)_kaic
- 渗透测试的本质与沉思
- 概率论与数理统计 4 Continuous Random Variables and Probability Distributions(连续随机变量与概率分布)(上篇)