oracle sql 语句 优化方法

1、表尽量使用别名,字段尽量使用别名.字段名,这样子,可以减少oracle数据库解析字段名。而且把 不需要的字段名剔除掉,只保留有用的字段名,不要一直使用 select *。

2、关联查询时,选择好主表 。oracle解析器对from 后面的表的解析是从右到左的,所以把数据量较小的表作为主表,然后和其他表进行关联,假如存在三个以下表,把同 时交叉关联的表作为主表,提高查询效率。

3、where 条件后面的的条件解析是从下向上,从后先前解析 执行的,所以可以把过滤数据量较多的条件放在最后面。

4.多利用表中数据行的rowid,rowid代表着表 中数据存在的物理地址。例如删除重复记录的时候,可以根据rowid进行删除。

5、减少对表的查询,特 别在子查询中,能尽量少重复访问表,就减少。

6、避免使用耗资源的操作,如distinct、Union、minus 等这种需要全表查询的操作。

7、优化分组group by ,对group by字段要进行添加锁引,如果分组当中含 有查询条件,要改写为where条件进行过滤后,再进行分组,而不是直接进行 having 条件。

8、用EXISTS替代IN、用NOT EXISTS替代 NOT IN,因为 not in是低效的,它必须对该字段 的全部数据进行排序。

9、要合理利用索引字段提高查询效率。特别是常用的关联字段可以增加索引,主 键、或者某些唯一字段。

10、利用>=替代>,因为>=可以直接定位到=的位置,而大于必须先 定位位置,然后再查询下一个数据。耗时不一样。

11、最后一个一定要学会查看执行计划,查看相关查 询条件是否进入索引,找出速。

相关推荐
一米阳光86613 小时前
软考(中级)软件设计师核心笔记(3)数据库系统——概念、数据库设计
数据库·笔记·职场发展·软考·软件设计师
奈斯先生Vector4 小时前
告别工具碎片化:基于 Nano Banana 全模态 AI 聚合架构搭建“文本-图像-视频”自动化协同生产线
运维·数据库·人工智能·架构·自动化·aigc·音视频
建筑工程企业管理系统6 小时前
erp工程项目管理系统落地价值:实现工程多项目成本精细化核算与管控
大数据·数据库·人工智能
AI大模型-小华6 小时前
Codex 三方充值快速入门指南
java·前端·数据库·chatgpt·ai编程·codex·chatgpt pro
foolishlee7 小时前
Neon wal日志处理流程2
数据库
2601_965798478 小时前
Is Hygia Good for Maid & Janitorial Sites? Technical Audit
服务器·网络·数据库
Cloud云卷云舒8 小时前
海山数据库(HaishanDB)面向工业云场景技术方案
数据库·haishandb·工业云·移动云海山数据库·天工云
逃逸线LOF8 小时前
Spring配置数据源{连接池}(Druid、c3p0)
java·数据库·spring
严同学正在努力10 小时前
从备份到恢复:我用 30 分钟恢复了误删的核心业务表
android·java·数据库·ai
xqqxqxxq11 小时前
DQL 数据查询 select
sql