zoukankan
html css js c++ java
SQL语句中exists和in有何区别
在SQL性能优化的时候,经常遇到是使用exists还是in提高效率的问题,这里结合之前写的两篇博客
《
MYSQL中in的用法
》和《
MYSQL中EXISTS的用法
》,总结
一下二者的区别。
exits使用循环(loop)的方式,先执行主查询并且缓存结果集,然后执行子查询,由外表的记录数决定循环的次数,所以,外表的记录数少于内表时,适合使用exists。in先执行子查询并且将去重后的结果集缓存,然后再执行主查询,所以,子查询返回的结果集梳理越小,越适合使用in。二者可以根据需求进行切换。
对于以上话题,大家又有什么自己的独特见解呢?欢迎在下方评论区留言!
读后有收获,小礼物走一走,请作者喝咖啡。
赞赏支持
查看全文
相关阅读:
java1.8时间比较应用
Window配置网络设定IPv4的固定IP自动被修改为169.254.*.*的问题
osgi内嵌jetty容器添加过滤器
jackson依赖的jar包
Tomcat下ajax请求路径总结
JavaScript中一个字符串变量突然变成了false的问题解析
Ajax请求发送的FormData是"[object object]"
jQuery的$.extend方法使用
JS 异常:Uncaught RangeError: Maximum call stack size exceeded解析
Java的重写equals但不重写hashCode方法的影响
原文地址:https://www.cnblogs.com/east7/p/13893568.html
最新文章
java---数据库连接池
单点登录
虚拟机linux+centos7+docker+springboot+Redis的使用
虚拟机linux centos7下安装docker
vagrant构建linux虚拟机
java List转变为逗号分隔的字符串(字符串去重)
Nacos、Feign、Hystrix服务介绍安装、注册、启动、调用
windows10配置jdk环境
SpringCloud相关概念介绍
oracle查看表索引
热门文章
oracle执行计划命令
Oracle数据库中查询所有触发器、存储过程、视图、表
安装vue-cli
liunx上安装vnc 服务
DOCKER 指令
linux上设置时钟同步
怎么保存退出vi编辑
Liunx 上安装java环境变量
远程指令
isEmpty 和 isBlank 区别
Copyright © 2011-2022 走看看