oracle一次sql优化笔记

背景:两个百万级数据量表需要连接,加全索引的情况下速度仍不见改善,苦查一下午解决问题未遂。

解决:经大佬指点了解到oracle优化器提示,使用/*+ USE_HASH(table1 table2) */或者/*+ USE_MERGE(table1 table2) */来指导优化器选择正确的联接方法。

使用方法示例:

复制代码
SELECT /*+ USE_MERGE(a b) */ a.* 
from table_a a 
inner join table_b b  on a.id=b.aid

使用结果:

从中午午休一小时没跑完变到10秒

觉恐怖如斯,遂记录

另外,可通过解释执行计划查看索引执行情况

另,学习oracle优化器提示可参考oracle优化器提示资料

相关推荐
SQL必知必会3 分钟前
SQL 删除重复行完全指南
数据库·sql
Aliex_git15 分钟前
浏览器 API 兼容性解决方案
前端·笔记·学习
工业甲酰苯胺15 分钟前
spring-事务管理
数据库·sql·spring
四谎真好看28 分钟前
SSM学习笔记(Spring篇 Day02)
笔记·学习·学习笔记·ssm
Amarantine、沐风倩✨2 小时前
列表接口严禁嵌套 LISTAGG + REGEXP:一次 mission_label 性能事故复盘
java·数据库·sql
gsls2008083 小时前
vue3学习笔记
笔记·vue3
闪闪发亮的小星星3 小时前
asin和atan2的区别 (CPA指向相关)
笔记·其他
瞎某某Blinder4 小时前
DFT学习记录[3]:material project api使用方法 mp_api调取与pymatgen保存
java·笔记·python·学习
IT19954 小时前
Java文档阅读笔记-AI LangChain4j - Agent Multiple Tools Calling Example
java·笔记·文档阅读
宁酱醇5 小时前
ORACLE_建表+增改查+删
数据库·oracle