如何对Oracle中Struct和Array进行Explain Plan

原创 2008年05月22日 10:07:00

在以前文章中我介绍了如何在JAVA程序中使用Struct一次传入多条数据给Oracle的存储过程 

众所周知,SQL语句到了最后需要做Explain Plan来保证没有影响性能的语句。

对Struct和Array做Explain Plan的方法是:

1.单独分析:

EXPLAIN PLAN FOR        
  
SELECT * FROM TABLE(DEPT_ARRAY(DEPARTMENT_TYPE(
                                
1--DNO NUMBER (10),
                                'NAME'--NAME VARCHAR2 (50),
                                'LOCATION' --LOCATION VARCHAR2 (50)
                                ))) T;                    
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);           

结果:

    PLAN_TABLE_OUTPUT
1 Plan hash value: 1748000095

3 ----------------------------------------------------------------------------------------------
4 | Id  | Operation                             | Name | Rows  | Bytes | Cost (%CPU)| Time     |
5 ----------------------------------------------------------------------------------------------
6 |   0 | SELECT STATEMENT                      |      |  8168 | 16336 |    24   (0)| 00:00:01 |
7 |   1 |  COLLECTION ITERATOR CONSTRUCTOR FETCH|      |       |       |            |          |
8 ----------------------------------------------------------------------------------------------

2.联合其他表:

EXPLAIN PLAN FOR        
  
SELECT * FROM TABLE(DEPT_ARRAY(DEPARTMENT_TYPE(
                                
1--DNO NUMBER (10),
                                'NAME'--NAME VARCHAR2 (50),
                                'LOCATION' --LOCATION VARCHAR2 (50)
                                ))) T
                
JOIN TABLE2 T2 ON T.DNO = T2.DNO;      
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);    

 

ORACLE EXPLAIN PLAN的总结 (优化SQL语句)

ORACLE EXPLAIN PLAN的总结 文章分类:数据库 在ORACLE数据库中,需要对SQL语句进行优化的话需要知道其执行计划,从而针对性的进行调整.ORACLE的执行计划的获得有几种方法...
  • doupeihua
  • doupeihua
  • 2016年09月13日 10:55
  • 1538

oracle explain plan for的用法

zzj@rac1>EXPLAIN PLAN FOR SELECT * FROM T_USER; Explained. zzj@rac1>SELECT * FROM TABLE(DBMS_XPLAN.D...
  • zhangzeyuaaa
  • zhangzeyuaaa
  • 2017年03月08日 09:48
  • 2747

Oracle EXPLAIN PLAN用法

使用EXPLAIN PLAN语句来确定Oracle数据库下指定SQL语句的执行计划,这个语句插入每一步执行计划的行描述到指定表中。你也可使用EXPLAIN PLAN语句作为SQL跟踪工具的一部分。 ...
  • chiclewu
  • chiclewu
  • 2013年11月23日 23:19
  • 6145

Oracle-SQL Explain Plan解读

概述执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述。 基于ORACLE的应用系统很多性能问题,是由应用系统SQL性能低劣引起的,所以,SQL的性能优化很重要,分析与优化SQL的性能我...
  • yangshangwei
  • yangshangwei
  • 2016年11月30日 19:57
  • 2846

Oracle 执行计划(Explain Plan) 说明

如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断...
  • tianlesoftware
  • tianlesoftware
  • 2010年08月20日 17:23
  • 69781

ORACLE SQL优化工具之--EXPLAIN PLAN

ORACLE SQL优化工具之--EXPLAIN PLAN   ORACLE SQL优化工具系列之--EXPLAIN PLAN    对于oracle...
  • haiross
  • haiross
  • 2013年12月05日 15:42
  • 10034

explain plan for 执行计划中各字段各模块描述

一、执行计划中各字段的描述   1、基本字段(总是可用的)         Id                 执行计划中每一个操作(行)的标识符。如果数字前面带有星号,意味着将在随后提供这行包含的...
  • kk185800961
  • kk185800961
  • 2013年04月08日 11:12
  • 2390

执行计划查看方法(Explain plan)

什么是执行计划 所谓执行计划,顾名思义,就是对一个查询任务,做出一份怎样去完成任务的详细方案。举个生活中的例子,我从珠海要去英国,我可以 选择先去香港然后转机,也可以先去北京转机,或者去广州也可以。但...
  • u013412535
  • u013412535
  • 2015年02月07日 16:55
  • 1803

简单对比查看执行计划的两种方法EXPLAIN PLAN 和 AUTOTRACE

EXPLAIN PLAN 和 AUTOTRACE 都可以查看执行计划。 值得一提的是:前者只是优化器通过读取数据字典的统计信息做出'最佳'访问路径判断,并没有真正去执行语句;后者是实际去执行了SQL语...
  • robo23
  • robo23
  • 2015年01月11日 21:14
  • 1276

ORACLE EXPLAIN PLAN的总结

 在ORACLE数据库中,需要对SQL语句进行优化的话需要知道其执行计划,从而针对性的进行调整.ORACLE的执行计划的获得有几种方法,下面就来总结下1、EXPLAIN的使用   OracleRDBM...
  • ArduousBonze
  • ArduousBonze
  • 2008年08月28日 09:52
  • 1231
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何对Oracle中Struct和Array进行Explain Plan
举报原因:
原因补充:

(最多只允许输入30个字)