`
man_yutao
  • 浏览: 39675 次
  • 性别: Icon_minigender_1
  • 来自: 梦的国度
社区版块
存档分类
最新评论

oracle优化

阅读更多

 

带通配符(%)的like语句

当通配符在搜寻词首出现时,orale将不使用该字段的索引,但在词尾出现时还是会使用索引的

order by语句

任何在order by语句的非索引项或者有计算表达式都会降低查询速度


第一种格式是使用IN操作符

...where column in ( select * from ... where ... );

第二种格式是使用EXIST操作符

...where exists (select 'X' from ... where ... )

后者比前者数据快很多


select ... from emp where dept_no not in (select dept_no from dept where dept_cat='A')

select ... from emp E where not exists (select 'X' from dept D where E.dept_no=D.dept_no and d.dept_cat='A' )


<>操作符

不等于操作符是永远不会用到索引的,因此对它的处理只会产生全表扫描

a<>0改为a>0  or  a<0

a<>''  改为 a>''


select * from employee where salary<>3000;

select * from employee where salary<3000 or salary>3000;

第二种查询方案会比第一种查询方案更快些,第二种查询允许oracle对salary列使用索引,而第一种查询不能使用索引


如一个表有100万记录,一个数值字段A,30万记录的A=0,30万记录的A=1,

39万记录的A=2,1万记录的A=3。那么执行A>2与A>=3的效果就有很大的区别了,

因为A>2时oracle会先找出为2的记录索引再进行比较,

而A>=3时oracle则直接找到=3的记录索引


union操作符

union在进行表链接后会筛选掉重复的记录

所以在不会产生重复记录的情况下使用 union all

select * from b_gs

union all 

select * from b_ds


select子句中避免使用*,oracle在解析的过程中,会将*依次转换成所有的列名


使用decode函数来减少处理时间

使用decode函数可以避免重复扫描相同记录或重复连接相同的表

select count(*) ,sum(sal) from emp

where dept_no=0020 and ename like 'smith%'


select count(*),sum(sal) from emp

where dept_no=0030 and ename like 'smith%'


select count(decode(dept_no,0020,'X',null)) as D0020_count,

count(decode(dept_no,0030,'X',null)) as D0030_count,

sum(decode(dept_no,0020,sal,null))  as D0020_sum,

sum(decode(dept_no,0030,sal,null)) as D0030_sum

from emp where ename like 'smith%'

 

分享到:
评论

相关推荐

    基于成本的ORACLE优化法则 英文原版

    《基于成本的Oracle优化法则》是数据库专家Jonathan Lewis的一部经典著作,该书深入探讨了Oracle数据库的性能优化策略,特别是在成本基础优化方面。Oracle数据库是全球广泛使用的大型企业级数据库系统,其性能优化...

    Oracle优化常用概念.pptx

    Oracle 优化常用概念 Oracle 优化器是 Oracle 数据库管理系统中一个核心组件,负责根据用户提交的 SQL 语句生成最优的执行计划,以提高查询效率。以下是 Oracle 优化器中的一些常用概念: CBO/RBO Oracle 优化...

    基于成本的oracle优化法则中文版.rar

    "基于成本的Oracle优化法则"是一个重要的概念,它涉及到Oracle数据库查询优化器的工作原理。在这个主题中,我们将深入探讨这一法则,理解其背后的机制,并学习如何利用这些知识来提升数据库性能。 1. **基于成本的...

    Oracle优化日记-一个金牌dba的故事

    《Oracle优化日记——一个金牌DBA的故事》这本书深入浅出地揭示了Oracle数据库优化的精髓。作为一名金牌DBA,作者以其丰富的实战经验,通过一系列的实际案例,讲述了在Oracle数据库管理与优化过程中的种种挑战和解决...

    Oracle优化器介绍

    Oracle 优化器介绍 Oracle 优化器是 Oracle 数据库中的一种核心组件,负责生成执行计划,以提高 SQL 语句的执行效率。 Oracle 优化器可以分为两大类:基于规则的优化器(RBO)和基于成本的优化器(CBO)。 基于...

    ORACLE优化设计方案

    Oracle优化设计方案旨在提升数据库性能,确保数据安全,便于管理和开发。设计Oracle数据库时,需要遵循一系列基本原则和步骤。 首先,逻辑建模是根据系统需求分析数据间的内在和外在关系,构建整个系统的数据结构。...

    oracle 优化重量级

    ### Oracle优化重量级知识点解析 #### 一、Oracle优化的重要性 在数据库管理领域,Oracle数据库因其卓越的性能、稳定性和安全性而被广泛采用。然而,随着业务量的增长和技术的发展,即使是像Oracle这样的顶级...

    Oracle优化Oracle优化

    ### Oracle优化方法与实践 #### 一、优化器模式选择 在进行Oracle数据库优化时,首先需要关注的是优化器模式的选择。Oracle提供了多种优化器模式,包括基于规则的优化器(RULE)、基于成本的优化器(COST)以及...

    Oracle 优化 金牌 DBA 日记

    本篇将围绕"Oracle 优化 金牌 DBA 日记"这一主题,深入探讨Oracle数据库优化的相关知识点。 1. **索引优化**:索引是提升查询性能的关键工具。金牌DBA会根据查询模式和数据分布情况创建和维护索引,如B树索引、位图...

    基于成本的Oracle优化法则

    资源名称:基于成本的Oracle优化法则内容简介:数据库领域的超级畅销书,世界级Oracle大师Jonathan Lewis的最新力作,也是近几年来Oracle领域最重要的著作之一,荣获2006年年度Oracle杂志编辑选择大奖。自该书出版...

    基于成本的oracle优化法则 中文

    基于成本的Oracle优化法则是一种科学的方法,用于确保数据库查询的高效执行。本篇文章将深入探讨这一主题,旨在帮助数据库管理员(DBA)和开发人员理解并应用这些法则来提升系统性能。 首先,我们要理解什么是基于...

    基于成本的oracle优化法则 全篇

    《基于成本的Oracle优化法则》是一本深入探讨Oracle数据库性能优化的专业书籍,共计573页,涵盖了Oracle数据库优化的方方面面。这本书对于Oracle数据库管理员、开发人员以及对数据库性能优化有需求的技术人员来说,...

    Oracle优化器案例与原理分析(盖国强)

    Oracle优化器是Oracle数据库中一个重要的组件,负责在数据库执行SQL查询时,选择最有效的执行计划。理解Oracle优化器的工作原理和案例对于数据库管理员来说至关重要,可以帮助他们调整和优化SQL执行,从而提高数据库...

    Oracle优化器介绍(精简完善版).doc

    ### Oracle优化器深入解析 #### Oracle优化器概览 Oracle数据库优化器负责分析SQL语句并确定执行查询的最有效方式。它通过考虑多种因素,包括表和索引的统计数据,来选择最佳的执行计划。Oracle优化器经历了从基于...

    Oracle优化日记:一个金牌DBA的故事(第一、二部)

    《Oracle优化日记》是两本深入探讨Oracle数据库性能优化的专业书籍,由金牌DBA撰写,旨在分享其在实际工作中的经验和技巧。Oracle优化是数据库管理中的核心任务,它关乎系统的响应速度、资源利用率以及整体性能。这...

    ORACLE 优化sql语句提高oracle执行效率 .doc

    ORACLE 优化 SQL 语句提高 Oracle 执行效率 Oracle 是一个功能强大的关系数据库管理系统,然而,如果不正确地使用 SQL 语句,可能会导致执行效率低下。为了提高 Oracle 的执行效率,需要遵循一些最佳实践。下面是...

    基本成本的Oracle优化法则源代码.rar

    "基本成本的Oracle优化法则"这一主题涵盖了数据库性能提升的多个重要方面。源代码的分享通常是为了帮助开发者和DBA(数据库管理员)深入理解Oracle的工作原理,从而更有效地进行性能调优。下面,我们将详细探讨这些...

    Oracle优化日记:一个金牌DBA的故事.pdf 高清pdf下载.rar 下载

    《Oracle优化日记:一个金牌DBA的故事》这本书深入探讨了Oracle数据库的性能优化技术,是DBA们不可或缺的参考资料。作者通过自身丰富的实战经验,分享了一系列解决实际问题的方法和策略,帮助读者理解Oracle数据库的...

    oracle优化教程

    ### Oracle优化教程知识点详解 #### 一、选用适合的Oracle优化器 在Oracle数据库中,优化器的选择对于SQL语句的执行效率至关重要。Oracle提供了三种优化器类型:基于规则(RULE)、基于成本(COST)和选择性...

    oracle优化工具

    ### Oracle优化工具详解 在IT领域,特别是在数据库管理与维护方面,Oracle数据库因其稳定性和强大的功能而被广泛采用。为了确保Oracle数据库能够高效运行并满足业务需求,一系列的优化工具应运而生。本文将围绕...

Global site tag (gtag.js) - Google Analytics