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优化器提示资料

相关推荐
早睡冠军候选人2 小时前
SQL(结构化查询语言)的四大核心分类
大数据·数据库·sql
芥子须弥Office3 小时前
从C++0基础到C++入门 (第二十五节:指针【所占内存空间】)
c语言·开发语言·c++·笔记
Starry_hello world4 小时前
MySql 表的操作
数据库·笔记·mysql
山茶花开时。5 小时前
[Oracle] ADD_MONTHS()函数
数据库·oracle
使二颗心免于哀伤6 小时前
《设计模式之禅》笔记摘录 - 14.组合模式
笔记·设计模式·组合模式
ZHSH.6 小时前
20250810 | 深度学习入门笔记1
笔记
小毛驴8507 小时前
Oracle 的 exp(传统导出工具)和 expdp(Data Pump 导出工具)是两种命令对比
数据库·oracle
teeeeeeemo9 小时前
Ajax、Axios、Fetch核心区别
开发语言·前端·javascript·笔记·ajax
小浣浣9 小时前
Java 后端性能优化实战:从 SQL 到 JVM 调优
java·sql·性能优化
秋难降9 小时前
零基础学习SQL(三)——数据查询语言(DQL)
数据库·sql·mysql