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

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


http://www.kler.cn/a/550765.html

相关文章:

  • QT笔记——QPlainTextEdit
  • 使用docker部署NextChat,使用阿里云、硅机流动、deepseek的apikey
  • 深度学习算法​:ocr营业执照识别可提取字段、接口识别
  • 《Nuxt.js 实战:从放弃到入门》二、Element Plus 集成
  • Oracle 12c中在同一组列上创建多个索引
  • 利用亚马逊AI代码助手生成、构建和编译一个游戏应用(下)
  • 基于springboot社会志愿者服务管理平台(源码+lw+部署文档+讲解),源码可白嫖!
  • 抖去推与超级编导矩阵系统技术深度对比,矩阵系统支持OEM
  • Ubuntu20.04安装IsaacSim4.5与IsaacLab2.0
  • 机器学习-02-机器学习算法思想以及在各行各业的应用
  • 成熟开发者需具备的能力
  • 【react8】如何在网页中直接引入react进行demo开发
  • OS-Genesis:基于逆向任务合成的 GUI 代理轨迹自动化生成
  • 若依Flowable工作流版本监听器使用方法
  • JSX和JS有什么区别
  • 从入门到精通:Postman 实用指南
  • SpringBoot3.x整合WebSocket
  • ES常用查询
  • 基于Dify、Ollama与DeepSeek的私有化AI知识库构建:工具作用、场景与优势分析
  • pythonrsa加密与sha256加密