文章目录

  • 问题1:嵌套SELECT和大表关联
  • 问题2:数据量与索引的关系
  • 问题3:分区索引查询
  • 问题4:多层SELECT FROM
  • 问题5:索引跳跃扫描
  • 问题6:索引重复建

问题1:嵌套SELECT和大表关联

结论:尽量少用大表之间关联,特别是外链接,改用嵌套SELECT。

嵌套SELECT(性能优)

大表关联(性能差)

问题2:数据量与索引的关系

结论:有索引,但全表扫表时,需要注意传入的参数,不一定是索引不好用。

28万,占用户数10%以上,ORACLE认为全表扫描块

7万,占用户数比例少,ORACLE用索引查询

问题3:分区索引查询

结论:利用分区索引查询数据时,查询条件一定要加分区字段。

分区索引,查询条件不带DQBM(性能优)

分区索引,查询条件带DQBM(性能优)

问题4:多层SELECT FROM

结论:多层SELECT FROM 就相当于多个视图关联查询,效率差,尽量不用。

优化前:

SELECT TAB2.GZDBH, TAB2.YHBH, TAB2.KHBH AS QXYSLYY, TAB2.KHMC AS YQYY,TAB2.YWLBBH, TAB2.YWZLBH, TAB2.ZJRL, TAB2.SQKSRQ, TAB2.SQDQRQ,TAB2.HTSPJLDM, TAB2.HTSPSJ, TAB2.HTSPBM, TAB2.HTSPR, TAB2.ZSSLRQ,TAB2.GDDWBMFROM (SELECT DISTINCT G.GZDBH, TAB0.YHBH, TAB0.KHBH, TAB0.KHMC, G.YWLBBH,G.YWZLBH, G.ZJRL, G.SQKSRQ, G.SQDQRQ, TAB1.HTSPJLDM,TAB1.HTSPSJ, TAB1.HTSPBM, TAB1.HTSPR, G.ZSSLRQ,G.GDDWBMFROM FW_YKGZDJBXX G,(SELECT K.YHBH, A.KHBH, A.KHMCFROM KH_YDKH K, KH_KHDA AWHERE K.KHBH(+) = A.KHBH) TAB0,(SELECT S.GZDBH, S.HTSPJLDM, S.HTSPSJ, S.HTSPBM, S.HTSPRFROM FW_YKHTSPXX S) TAB1WHERE G.YHBH(+) = TAB0.YHBHAND G.GZDBH = TAB1.GZDBH(+)) TAB2JOIN (SELECT Z.ZZBMFROM XT_ZZ ZSTART WITH Z.ZZBM = '0306'CONNECT BY PRIOR Z.ZZBM = Z.SJZZBM) ZZON ZZ.ZZBM = TAB2.GDDWBM


优化后:

SELECT A.GZDBH, A.YHBH,(SELECT B.KHBH FROM KH_YDKH B WHERE B.YHBH = A.YHBH AND B.DQBM = A.DQBM) QXYSLYY, (SELECT C.KHMC FROM KH_YDKH B,KH_KHDA C WHERE B.KHBH = C.KHBH AND B.DQBM = C.DQBMAND B.YHBH = A.YHBH AND B.DQBM = A.DQBM ) YQYY, A.YWLBBH, A.YWZLBH, A.ZJRL, A.SQKSRQ, A.SQDQRQ,(SELECT D.HTSPJLDM FROM FW_YKHTSPXX D WHERE D.GZDBH = A.GZDBH AND D.RWH = A.FAYXRWH AND D.DQBM = A.DQBM) HTSPJLDM,(SELECT D.HTSPSJ FROM FW_YKHTSPXX D WHERE D.GZDBH = A.GZDBH AND D.RWH = A.FAYXRWH AND D.DQBM = A.DQBM) HTSPSJ,(SELECT D.HTSPBM FROM FW_YKHTSPXX D WHERE D.GZDBH = A.GZDBH AND D.RWH = A.FAYXRWH AND D.DQBM = A.DQBM) HTSPBM,(SELECT D.HTSPR FROM FW_YKHTSPXX D WHERE D.GZDBH = A.GZDBH AND D.RWH = A.FAYXRWH AND D.DQBM = A.DQBM) HTSPR, A.ZSSLRQ,A.GDDWBM
FROM FW_YKGZDJBXX A
WHERE A.GDDWBM IN (SELECT Z.ZZBM FROM XT_ZZ ZSTART WITH Z.ZZBM = '0306'CONNECT BY PRIOR Z.ZZBM = Z.SJZZBM)

问题5:索引跳跃扫描

结论:组合索引时,如果第一个字段的DISTINCT值较少,WHERE条件用组合索引的第二个字段检索时,也会用上该索引。

问题6:索引重复建

结论:同一个字段不应该在多个索引的同一个位置重复出现。
SBLBDM在两个索引中都在第一个字段出现,应删除一个。

ORACLE 性能优化示例相关推荐

  1. 如何“暴力破解”Oracle性能优化的极端问题(附精彩案例解读)

    云和恩墨大咖系列报道 2019数据技术嘉年华于11月16日在京落下了帷幕.大会历时两天,来自全国各地上千名学术精英.数据库领袖人物.数据库专家.技术爱好者在这里汇聚一堂,围绕"开源 • 智能 ...

  2. Oracle执行exists优化,PHP_解决Oracle性能优化中的问题, 在Oracle性能优化时,用exists - phpStudy...

    在Oracle性能优化时,用exists替代in,用表链接替代exists,关于前者,一般效果比较明显,exists效率明显比in高,但是如果要想表连接的效率比exists高,必须在from子句中,将 ...

  3. oracle性能优化总结

    Oracle性能优化 一.数据库优化的方向 1.程序设计(这点最重要,如果程序本身设计有问题,再怎么进行下面的优化都是徒劳的.) 2.操作系统优化 3.硬件优化 4.数据库优化 5.SQL语句优化 二 ...

  4. oracle性能优化之awr分析

    oracle性能优化之awr分析 作者:bingjava 最近某证券公司系统在业务期间系统运行缓慢,初步排查怀疑是数据库存在性能问题,因此导出了oracle的awr报告进行分析,在此进行记录. 导致系 ...

  5. Oracle 性能优化之内核的shmall 和shmmax 参数

    Oracle 性能优化之内核的shmall 和shmmax 参数 内核的 shmall 和 shmmax 参数 SHMMAX= 配置了最大的内存segment的大小 -->这个设置的比SGA_M ...

  6. 春节福利:《Oracle性能优化与诊断案例精选》电子版首次公开下载

    值此猪年春节到来之际,恩墨云服务团队恭祝大家新年快乐,心想事成.同时我们也为大家准备了一份新年礼物,首次公开Eygle和600主编的<Oracle性能优化与诊断案例精选>电子版下载. 本书 ...

  7. 《Oracle性能优化与诊断案例精选》——2.3 衣带渐宽终不悔

    本节书摘来自异步社区出版社<Oracle性能优化与诊断案例精选>一书中的第2章,第2.3节,作者:盖国强 , 李轶楠 ,更多章节内容可以访问云栖社区"异步社区"公众号查 ...

  8. Oracle性能优化 以及 库缓存命中率及等待事件

    http://www.cnblogs.com/hyddd/archive/2009/08/30/1556939.html 前言 最近hyddd一直看Oracle的资料,今天特地总结一下这段时间了解到的 ...

  9. Oracle性能优化专题

    Oracle优化是开发人员必须掌握的技能,与其说是技能不如是开发基本.而且在面试过程中这个话题也常常被问到,有一两年工作经验的童鞋面试这个问题是肯定要被问到的,如果知识简单的CRUD实现功能,则是没有 ...

最新文章

  1. 安卓Design包下的TextInputLayout和FloatingActionButton的简单使用
  2. DL之DNN优化技术:DNN中参数初始化【Lecun参数初始化、He参数初始化和Xavier参数初始化】的简介、使用方法详细攻略
  3. 第四届蓝桥杯省赛javaB组试题解析
  4. mme设备内部错误_防爆电气设备安装的三大误区 你中招了没?
  5. JQuery-Dialog(弹出窗口,遮蔽窗口)
  6. sharepoint 2007功能增强解决方案,资料收集
  7. iview select 怎么清空_iView各种组件清空重置
  8. mysql php 变量赋值,在MySQL UPDATE(PHP / MySQL)中使用变量
  9. 30行Python代码来绘制一个微信图标
  10. success.ftlh与error.ftlh
  11. dns设置邮箱服务器,专业版DNS设置-更多-Coremail论客邮件系统-企业邮箱,8亿用户信赖的邮件服务器系统...
  12. 水烟炭行业调研报告 - 市场现状分析与发展前景预测
  13. UVa1401 Remember the Word(DP+Trie树)
  14. 图解CSS3----4-结构伪类选择器
  15. 深入浅出详解因子分析,附案例教学(全)
  16. javaweb问题集锦: HikariPool-1 - Connection is not available, request timed out after 60001ms.
  17. 《风暴英雄》游戏体验
  18. 诈金花游戏单机版 附开源地址
  19. Cognos问题解决
  20. Java 从零开始实现微信支付(后台)

热门文章

  1. Firefly ROC-RK3588S-PC板卡详细介绍
  2. Notes 20180505 : 计算机的基础知识
  3. [论文笔记|VIO]ICE-BA: Incremental, Consistent and Efficient Bundle Adjustment for Visual-Inertial SLAM
  4. string函数的模拟实现
  5. Lumaqq移植到Android 之进阶篇
  6. MYSQL 性能优化 index 函数,隐藏,前缀,hash 索引 使用方法(2)
  7. dann的alpha torch_pytorch BiLSTM+CRF代码详解
  8. ExtJs 入门教程(我感觉挺好的)
  9. Python当中华氏度和摄氏度转换
  10. 《笨办法学python3》再笨的人都能学会python,附PDF,拿走不谢