sql中in和exists的使用情况是怎样的
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,本篇文章给大家分享的是有关sql中in和exists的使用情况是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。in 和 exist
千家信息网最后更新 2025年01月20日sql中in和exists的使用情况是怎样的
本篇文章给大家分享的是有关sql中in和exists的使用情况是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
in 和 exists的区别: 如果子查询得出的结果集记录较少,主查询中的表较大且又有索引时应该用in, 反之如果外层的主查询记录较少,子查询中的表大,又有索引时使用exists。其实我们区分in和exists主要是造成了驱动顺序的改变(这是性能变化的关键),如果是exists,那么以外层表为驱动表,先被访问,如果是IN,那么先执行子查询,所以我们会以驱动表的快速返回为目标,那么就会考虑到索引及结果集的关系了 ,另外IN时不对NULL进行处理。
in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询。一直以来认为exists比in效率高的说法是不准确的。
not in 和not exists
如果查询语句使用了not in 那么内外表都进行全表扫描,没有用到索引;而not extsts 的子查询依然能用到表上的索引。所以无论那个表大,用not exists都比not in要快。
以上就是sql中in和exists的使用情况是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
查询
索引
外表
驱动
情况
外层
更多
知识
篇文章
结果
循环
不对
实用
较大
关键
对内
就是
工作会
性能
效率
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库主从教程
软件开发属于信息架构吗
amd服务器分析
做软件开发工程师月薪
特价软件开发
大规模智能网络技术
距离用户最近的数据库
浦东新区网络技术服务包括什么
和软件开发工程师说随便做
网络安全华为
网络安全大赛基本要求
山西移动软件开发公司
数据库中done是什么意思
宝山区专业软件开发试验设备
数据库用命令行修改列名
河北系统软件开发哪家正规
云服务器可以玩天书奇谈吗
襄阳网络技术视频
远程连接数据库mysql
ibm软件开发高级工程师
南昌世讯软件开发
技术部门软件开发
青竹青网络技术有限公司
固定取某行数据库
网络安全中心英文
第二届网络安全知识竞赛
合肥软件开发公司哪个好
汉宇集团汽车充电桩软件开发
服务器远程访问的管理
date数据库日期格式