关于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 条件, 有时候可以提高查询效率。

相关推荐
Hello.Reader35 分钟前
Flink SQL EXPLAIN “看懂计划”到“用 PLAN_ADVICE 调优”
大数据·sql·flink
allk553 小时前
Android 渲染性能优化实战总结:从监控体系到架构落地
android·性能优化·架构
隐语SecretFlow3 小时前
【技术教程】TrustFlow 授权策略是怎么实现的?
性能优化·架构·开源
yjt19933 小时前
qt+opencv提取视频中目标转速的项目,记录提高性能的方法
人工智能·opencv·计算机视觉·性能优化
赵得C3 小时前
2025下半年软件设计师考前几页纸
java·开发语言·分布式·设计模式·性能优化·软考·软件设计师
FrameNotWork3 小时前
HarmonyOS 教学实战(三):列表分页、下拉刷新与性能优化(让列表真正“丝滑”)
华为·性能优化·harmonyos
UWA4 小时前
哪些因素和参数会影响Bloom的性能开销
性能优化·script·rendering
侑虎科技4 小时前
Unity IL2CPP的GC原理
性能优化
榮十一4 小时前
10道SQL练习题及答案
数据库·sql·算法
Hns.4 小时前
MySQL慢SQL问题查找与优化方案
数据库·sql·mysql