转自:http://database.51cto.com/art/201004/196773.htm
SQL优化
应用程序的执行最终将归结为数据库中的SQL语句执行,SQL语句消耗了70%到90%的数据库资源。因此SQL语句的执行效率最终决定了ORACLE数据库的性能。许多程序员认为查询优化是DBMS(数据库管理系统)的任务,与程序员所编写的SQL语句关系不大,这是错误的。一个好的查询计划往往可以使程序性能提高数十倍。另外,SQL语句独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低。
SQL优化的主要途径是:
a.有效索引的建立。在经常进行连接,但是没有指定为外键的列上建立索引;在频繁进行排序或分组(即进行group by 或 order by 操作)的列上建立索引;在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引;如果待排序的列有多个,可以在这些列上建立复合索引(compound index)。
为了降低I/O竟争, 索引要建在与用户表空间不在同一磁盘上的索引空间里。索引分为:
分区索引、完全索引、唯一索引、位图索引等几种类型,在建立索引前,应该测量这个索引的选择性,索引的选择性是指索引列里不同值的数目与表中记录数的比。
b.在有大量重复值并且经常有范围查询(例如 between,>,<>=,<=)的列,或是用到order by、group by的列,可考虑建立群集索引 ;
c.要经常同时存取多列,目每列都含有重复值可考虑建立组合索引
d.优化表达式,在能使用范围查询时尽可能使用范围索引, 而少用“like”,因为“LIKE”关键字支持的通配符匹配特别耗费时间。
f.使用
Oracle语句优化器(oracle optimizer)和行锁管理器(row-level manager)[b][/b]来调整优化SQL语句。
分享到:
相关推荐
### Oracle查询优化4大方面的主要途径 在Oracle数据库管理中,查询优化是提高数据库性能的关键环节之一。本文将从四个方面详细介绍Oracle查询优化的主要途径:缓存管理、内存管理、索引管理和连接策略优化。 #### ...
### Oracle SQL语句优化规则详解 #### 一、选择正确的优化器 在Oracle数据库中,SQL语句的执行效率很大程度上取决于所选的优化器。Oracle提供了三种优化器模式: 1. **基于规则的优化器(RULE)**:这是Oracle...
在ORACLE数据库中,SQL优化的处理过程涉及三个主要阶段:解析数据、执行数据和提取数据。解析阶段涉及对SQL语句的语法和数据进行整体解析,以及将相关数据放入共享应用中。在执行阶段,如果存在相同的SQL语句可以...
本文将深入探讨Oracle索引的原理、创建方法,并结合SQL优化策略,帮助你提升数据库查询速度,降低资源消耗。 首先,我们要理解索引的基本概念。在数据库中,索引类似于书籍的目录,它为数据提供快速访问的途径。...
1. **SQL优化**:优化SQL语句是提升性能的关键,包括避免全表扫描,使用索引,减少子查询,合理使用连接方式等。 2. **绑定变量**:使用绑定变量可以防止硬解析,提高SQL执行效率,减少解析开销。 3. **执行计划**...
"Oracle+SQL优化"这一主题深入探讨了如何通过优化SQL语句来提升数据库系统的性能,这对于DBA(数据库管理员)以及需要与数据库打交道的程序员来说是必不可少的知识。 Oracle数据库是全球广泛使用的数据库管理系统之...
本文将详细探讨三个主要方面:优化器的选择、访问表的方式以及SQL语句的共享。 1. 优化器的选择 Oracle数据库提供了三种优化器模式:RULE、COST和CHOOSE。RULE基于预定义的优化规则来决定执行计划,而COST则是基于...
在数据库管理领域,Oracle SQL优化是一项至关重要的技能,它直接影响到数据库系统的性能和效率。Oracle数据库作为世界上最广泛使用的数据库管理系统之一,其SQL优化对于提升应用响应速度、减少资源消耗以及提高用户...
以上这些知识点涵盖了Oracle SQL性能优化的主要方面,从查询计划的选择到具体的SQL语句编写,再到系统层面的参数调整和索引管理,每一个细节都可能对最终的查询效率产生重大影响。对于数据库管理员和开发人员来说,...
Oracle SQL是数据库管理员和开发人员在Oracle数据库系统中进行数据查询、管理与分析的主要工具。这份"Oracle SQL必备参考(PDG)"很可能包含了关于SQL语法、查询优化、事务处理、索引策略以及各种DML(数据操作语言)...
SQL优化的衡量指标主要包括系统响应时间和并发性。低效的SQL语句可能源于开发人员对SQL效率的忽视或者对SQL执行原理的不了解。SQL调优不仅涉及语法和内嵌函数的熟练运用,更需要理解SQL解析和优化器的工作方式。 ...
本文深入探讨了SQL查询优化的重要性,并分析了影响查询性能的四大主要原因,以及SQL优化的一般步骤。 一、SQL查询性能低下的原因 1. 高成本操作:在大量记录集上进行排序或聚合等昂贵操作,可能导致CPU和内存资源...
通过合理选择优化器模式、利用高效的数据访问方式以及充分利用SQL语句共享机制,可以显著提升Oracle数据库的性能。此外,注意细节如绑定变量的一致性、对象的统一命名等也是优化查询性能的重要因素。希望以上内容对...
尽管给定描述并未提供具体的信息,但从标题“关于SQL优化的电子书”及标签“sql优化”,结合部分内容可以看出,此电子书聚焦于SQL...无论是对于初学者还是有经验的开发者,掌握SQL优化方法都是提升个人能力的重要途径。
优化主要是指对SQL查询语句的改写,使得查询的执行计划更高效,从而减少系统资源的消耗,加快查询的响应时间。在Oracle中,优化器会根据不同的参数来决定使用何种方式执行SQL语句。这些参数包括统计信息、表和索引的...
了解了这些基础知识,我们还可以进一步优化SQL查询,比如通过索引来提高查询速度,或者根据具体业务需求选择合适的分页策略。在实际应用中,应综合考虑性能和代码的可读性,选择最合适的分页方法。 总的来说,...
3. SQL优化:在数据库管理中,SQL优化是一个关键环节,它涉及到使用各种技术和方法来提高SQL语句的性能。优化的目的是为了减少数据库响应时间、减少资源消耗以及提高数据处理的效率。 在学习Oracle SQL高级编程时,...