关于sql 查询性能优化的小经验

最近接到一些sql优化的任务。数据库类型:DB2

有一个长sql查询效率低,大概要几十秒,大概查询逻辑如下:

select * from tableA a where exists (select 1 from tableB b where a.id=b.id )

or exists (select 1 from tableC c where a.id=c.id );

tableA ,tableB ,tableC都是大表,数据量大,最终执行时间要几十秒,

但是把or 条件改成 union all 却可以大大提升执行效率,时间降到几秒:

select * from tableA a where exists (select 1 from tableB b where a.id=b.id )

union all

select * from tableA a where exists (select 1 from tableC c where a.id=c.id );

小结:union all 替换 or 条件, 有时候可以提高查询效率。

相关推荐
陈皮糖..16 小时前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
comerzhang65518 小时前
别再只看 Long Task 了:页面卡顿到底是 React、Layout,还是 V8 GC?
性能优化·next.js
腹黑天蝎座18 小时前
前端性能优化实战指南:从原理到落地的全方位解决方案
前端·性能优化·监控
l1t20 小时前
DeepSeek v4辅助生成的单文件SQL查询示例页面
javascript·数据库·sql
それども21 小时前
Spring Bean 注入的优先级顺序
java·数据库·sql·spring
张子行的博客21 小时前
SQL 调优实战:跨表排序性能提升之路
数据库·sql·oracle
旺王雪饼 www1 天前
MySQL常用查询语句
数据库·sql
Ulyanov1 天前
《PySide6 GUI开发指南:QML核心与实践》 第八篇:性能优化大师——QML应用性能调优实战
python·qt·ui·性能优化·qml·系统仿真
悟空瞎说1 天前
前端性能优化进阶指南:从底层原理到工程化闭环
面试·性能优化
Carsene1 天前
开篇:我们距离理想的 Java SQL DSL 还有多远?
java·sql