oracle
lingzihan1215
这个作者很懒,什么都没留下…
展开
-
oracle 表连接方式详解
在查看sql执行计划时,我们会发现表的连接方式有多种,本文对表的连接方式进行介绍以便更好看懂执行计划和理解sql执行原理。 一、连接方式: 嵌套循环(Nested Loops (NL)) (散列)哈希连接(Hash Join (HJ)) (归并)排序合并连接(Sort Merge Join (SMJ) ) 二、转载 2012-04-09 10:57:45 · 273 阅读 · 0 评论 -
普通物理表、临时表和TABLE(函数)的执行效率对比
普通物理表、临时表和TABLE的用途各不相同,普通表一般存放需要长期保存的数据,临时表存放某个事务或会话过程中的临时数据,array是oracle中的数组,也可以用于存放临时数据,或在OODB中使用。但是,优化器在做查询计划时,尤其在CBO中,没临时表和TABLE的统计数据,因此总会得出一些混乱的查询计划,往往需要我们用hint去调整。并且,由于实现机制各不相同,他们的查询效率也不一样。下面通过一转载 2012-04-09 11:25:18 · 3151 阅读 · 0 评论 -
oracle 执行计划(explain plan)说明
基于oracle的应用系统很多性能问题,是由应用系统sql性能低劣引起的,所以,sql的性能优化很重要,分析与优化sql的性能我们一般通过查看该sql的执行计划,本文就如何看懂执行计划,以及如何通过分析执行计划对sql进行优化做相应说明。一、什么是执行计划(explain plan) 执行计划:一条查询语句在oracle中的执行过程或访问路径的描述。二、如何查看转载 2012-04-09 10:50:23 · 1046 阅读 · 1 评论 -
Oracle中的Hash Join祥解
一、 hash join概念 hash join(HJ)是一种用于equi-join(而anti-join就是使用NOT IN时的join)的技术。在Oracle中,它是从7.3开始引入的,以代替sort-merge和nested-loop join方式,提高效率。在CBO(hash join只有在CBO才可能被使用到)模式下,优化器计算代价时,首先会考虑hash join。转载 2012-04-09 11:06:25 · 430 阅读 · 0 评论 -
Oracle的10046事件
Oracle的10046事件,可以跟踪应用程序所执行的SQL语句,并且得到其解析次数.执行次数,CPU使用时间等信息。这对我们分析、定位数据库性能问题是非常有用的。10046event是oracle用于系统性能分析时的一个最重要的事件。当激活这个事件后,将通知oracle kernel追踪会话的相关即时信息,并写入到相应trace文件中。这些有用的信息主要包括sql是如何进行解析,绑定变量转载 2012-04-10 13:29:22 · 264 阅读 · 0 评论 -
Oracle执行计划顺序是怎么看的
阅读oracle执行计划的方法:先从最开头一直往右看,直到看到最右边的并列的地方,对于不并列的,靠右的先执行:对于并列的,靠上的先执行。 即并列的缩进块,从上往下执行,非并列的缩进块,从下往上执行。如下示例:Execution Plan----------------------------------------------------------转载 2012-04-10 13:21:00 · 482 阅读 · 0 评论 -
dbms_xplan包的输出
dbms_xplan包能够显示存储在三个不同地方的执行计划:plan_table,library cache,awr中。 下面分别简单介绍display函数,display_cursor函数,display_awr函数的几个参数输入和基本用法:display函数(搭配explain plan使用)的参数输入:1. table_name: 默认为plan_table。2. s转载 2012-04-20 10:23:30 · 528 阅读 · 0 评论