Oracle sql 优化小结

对于sql优化,从实际工作经验出发,总结如下:

1)、where过滤部分,等式左边不要带任何计算和嵌套函数,想办法等价替换,在等式右边去做变动;

2)、能手动计算的部分,手动算好写上固定的值,不要写一个表达式在sql里,让程序每次去重算;

3)、3个及以上大表关联,慢到跑个30分钟都不出结果,最直接简单的方法是建一个临时表,拆分多表关联为多个2表关联的等价sql;

4)、对于非常慢的sql,可以尝试重新获取源表信息,获取新的执行计划;

5)、在实现逻辑时,对于有排序操作的关键字(order by/group by/distinct/union/等)要敏感,看看是不是在实现逻辑的同时能避免这些排序操作;

6)、避免自己写函数实现功能,应使用Oracle自带的函数;

7)、不要千篇一律的使用左连接(左连接在实现功能时,有一个好处,那就是不用管那么多,反正不会丢数据),应该站在业务的角度去分析数据,是不是一定要左连接,毕竟外连接是很耗性能的;

8)、对于大数据,可以采取分区+并行的技术,对于分区,在实现方式上,要考虑到怎么为表自动添加分区和时间久了怎样自动drop掉前面的分区;

9)、索引是把双刃剑,使用时要测试好,并能考虑到后期要手动维护、索引失效等等负面问题;

10)、强制Hint,人为改变Oracle执行计划;

11)、多分析执行计划,来判断sql的优劣,为了避免缓存的影响,将不同的测试sql均执行多次;

12)、对于sql的整体把握,一定要知道源表数据量大概为多少,最终返回的结果集会多少,不然优化无从谈起,因为所有的技术和结论都是因数据量的大小变化的;

13)、以上均为开发者在实现层面的优化,更根本的在于前期的设计和架构;

本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

时间: 2024-11-02 19:46:09

Oracle sql 优化小结的相关文章

【重磅干货】看了此文,Oracle SQL优化文章不必再看!

听"俊"一席话,胜读十年书.看了这篇由DBA+社群联合发起人丁俊大师(网名:dingjun123)分享的SQL优化大作,其他Oracle SQL优化文章都不必再看了!   专家简介    丁俊 网名:dingjun123 DBA+社群联合发起人   性能优化专家,Oracle ACEA,ITPUB开发版资深版主.8年电信行业从业经验,在某大型电信系统提供商工作7年,任资深工程师,从事过系统开发与维护.业务架构和数据分析.系统优化等工作.擅长基于ORACLE的系统优化,精通SQL.PL/

oracle sql 优化 ,请各位看看哈

问题描述 oracle sql 优化 ,请各位看看哈 select e.id, e.content, e.write_time, e.orig_id, e.from_client, e.images, u.nickname || '(' || u.realname || ')' as writer, a.orig_content, b.praise_times, c.comment_times, d.transfer_times from wx_essay e left join wx_user

oracle SQL优化到10人同时查询返回1s

问题描述 oracle SQL优化到10人同时查询返回1s 20C SELECT l.id l.pro_name l.pro_number s.qutt_financing_value s.qutt_project_deadline s.qutt_ready_rate s.qutt_cal_way NVL( (SELECT c.CUST_SIMPLENAME FROM T_CUST_COMPANY c WHERE c.id=l.assure_cust_id )'-') AS assure_nam

看了此文,Oracle SQL优化文章不必再看!

  第一章 看了此文,Oracle SQL优化文章不必再看! DBAplus社群 | 2015-11-17 23:44 目录SQL优化的本质 SQL优化Road Map 2.1 制定SQL优化目标 2.2 检查执行计划 2.3 检查统计信息 2.4 检查高效访问结构 2.5 检查影响优化器的参数 2.6 SQL语句编写问题 2.7 SQL优??\x2F限制导致的执行计划差 SQL优化案例 SQL执行计划获取 4.1 如何获取准确的执行计划 4.2 看懂执行计划执行顺序 一SQL优化的本质 一般来

ORACLE SQL优化之ORA-03150&ORA-02055&ORA-02063

                                                                                                             >   

Oracle SQL tuning 数据库优化步骤图文教程

  SQL Turning 是Quest公司出品的Quest Central软件中的一个工具.Quest Central是一款集成化.图形化.跨平台的数据库管理解决方案,可以同时管理 Oracle.DB2 和 SQL server 数据库. 一.SQL Tuning for SQL Server简介 SQL语句的优化对发挥数据库的最佳性能非常关键.然而不幸的是,应用优化通常由于时间和资源的因素而被忽略.SQL Tuning (SQL优化)模块可以对比和评测特定应用中SQL语句的运行性能,提出智能

被埋没的SQL优化利器——Oracle SQL monitor

转载声明:本文为DBA+社群原创文章,转载必须连同本订阅号二维码全文转载,并注明作者名字及来源:DBA+社群(dbaplus).    据说,在Oracle企业版数据库中有一个免费的工具,乃SQL优化之利器,那就是Oracle SQL monitor.下面,由DBA+社群原创专家周俊,给大家科普一下这一被埋没的神器.   专家简介    周俊 DBA+社群原创专家   具有14年以上Oracle数据库技术支持经验,在IBM的7年间担任华东区非IBM logo产品技术支持团队team leader

Oracle SQL tuning 数据库优化步骤分享(图文教程)_oracle

SQL Turning 是Quest公司出品的Quest Central软件中的一个工具.Quest Central是一款集成化.图形化.跨平台的数据库管理解决方案,可以同时管理 Oracle.DB2 和 SQL server 数据库. 一.SQL Tuning for SQL Server简介 SQL语句的优化对发挥数据库的最佳性能非常关键.然而不幸的是,应用优化通常由于时间和资源的因素而被忽略.SQL Tuning (SQL优化)模块可以对比和评测特定应用中SQL语句的运行性能,提出智能化的

Oracle SQL tuning 步骤

    SQL是的全称是Structured Query Language(结构化查询语言).SQL是一个在80年代中期被使用的工业标准数据库查询语言.不要把SQL语言与商业化产品如Microsoft SQL server或开源产品MySQL相混淆.所有的使用SQL缩略词的这些都是SQL标准的一部分. 一.SQL tuning之前的调整    下面这个粗略的方法能够节省数千小时乏味的SQL tuning,因为一旦调整它将影响数以百计的SQL查询.记住,你必须优先调整它,否则后    续的优化器参