当前位置: 首页 > news >正文

sql not in 优化

sql优化
1、not in 的优化
not in和not exists不会命中索引,可以优化为通过left join实现;

例如要查询存在于a表但不存在与b表的数据,比较容易理解的sql写法:

SELECT * FROM table_a WHERE id NOT IN (SELECT aid FROM table_b)
1
可以利用left join保左、不保右的特性,改为如下sql,效果是一样的,但是如果b表的aid有索引,那么下面的方法可以命中索引,上面的方法一般不会命中索引

SELECT * FROM table_a a
LEFT JOIN table_b b ON a.id=b.aid
WHERE b.aid IS NULL

相关文章:

  • 【WRF模拟】全过程总结:更换不同研究时段改动总结
  • 简单易懂的金融知识:如何解读股指期货?股指期货如何做?
  • C#知识大纲回顾
  • 国产银河麒麟v10操作系统 添加epel源
  • 力扣高频sql 50题(基础版) :NULL, 表连接,子查询,case when和avg的结合
  • VirtualBox 中使用 桥接网卡 并设置 MAC 地址
  • 关于C#的一些基础知识点汇总
  • Redis 全方位解析:从入门到实战
  • sourcetree gitee 详细使用
  • vue3 配置@根路径
  • 软件工程之软件需求SWE.1
  • 工业制造能耗管理新突破,漫途MTIC-ECM平台助力企业绿色转型!
  • leaflet前端初始化项目
  • 机器学习 - 线性模型
  • Linux 内存管理与文件页缓冲区
  • 【go语言规范】 使用函数式选项 Functional Options 模式处理可选配置
  • SpringBoot整合ClickHouse数据库教程
  • 117.填充每个节点的下一个右侧节点指针Ⅱ python
  • PostgreSQL 的崛起与无服务器数据库的新时代
  • kafka集群配置操作
  • 新村回响:一周城市生活
  • 美英达成贸易协议,美股集体收涨
  • 中国国家电影局与俄罗斯文化部签署电影合作文件
  • 深入贯彻中央八项规定精神学习教育中央第一指导组指导督导河北省见面会召开
  • 上海优化营商环境十大攻坚突破任务中,为何第一项是实施世行对标改革?
  • 成立6天的公司拍得江西第三大水库20年承包经营权,当地回应