易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE SQL性能优化大总结

ORACLE SQL性能优化大总结
1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
" ?; J) n+ v8 J- v" q    Oracle的解析器按照从右到左的顺序处理from子句中的表名,from子句中写在最后的表(基础表 driving table)将被最先处理,在from子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。假如有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.
7 Y6 A% _; P7 R$ K8 k+ i' B2 G(2) WHERE子句中的连接顺序.: 7 _' p! V& j0 t
    ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.
0 \  _- K* U7 q3 A- v  G(3) SELECT子句中避免使用 ‘ * ‘: " S. l, j9 `4 ^& Y7 K$ A
    ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间 / a" Q! e3 U2 s8 e+ S4 T
(4) 减少访问数据库的次数: 8 d0 y! R/ w! y. D8 t  e9 [7 I' ]# s
    ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等; ) T0 @  M; r( k8 H) @$ h
(5) 在SQL*Plus , SQL*Forms和Pro*C中重新设置ARRAYSIZE参数, 可以增加每次数据库访问的检索数据量 ,建议值为200 8 u% p8 @$ p9 t2 e' }4 B# }
(6) 使用DECODE函数来减少处理时间:
8 i- k$ O- d& k/ Q    使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表.
$ L; z2 I  g" x! s. r! E(7) 整合简单,无关联的数据库访问:
  I# L8 o9 F9 W7 i2 i3 n0 a" i    假如你有几个简单的数据库查询语句,你可以把它们整合到一个查询中(即使它们之间没有关系)
/ O3 W+ r; ^  t; s; E* t1 U' P(8) 删除重复记录: 8 v  P- d3 o$ z
    最高效的删除重复记录方法 ( 因为使用了ROWID)例子:
1 K5 I3 Y: X6 a  ]8 PDELETE from EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID) / J5 ]1 Z7 x/ {0 K
from EMP X WHERE X.EMP_NO = E.EMP_NO); $ b  w: W3 J9 i/ Z) ^
(9) 用TRUNCATE替代DELETE: 9 y6 {7 l'


相关文档:

oracle 表空间操作

oracle表空间操作详解
  1
  2
  3作者:   来源:    更新日期:2006-01-04 
  5
  6 
  7建立表空间
  8
  9CREATE TABLESPACE data01
 10DATAFILE '/ora ......

oracle视频教程(内部经典)_讲 师:王治国


下载地址:
http://www.itsoba.com/Article.asp?id=847
视频介绍:
本套ORACLE视频教程为传智播客内部经典教学视频的一集,后续视频正在录制和整理中,敬请关注。  
讲师介绍:
王治国,有多年软件开发经验和教学经验,先后在多家软件公司担任软件工程师、项目经理,精通J2SE、J2ME、J2EE、Linux、Oracle、SqlS ......

SQL核心语句

    sql核心语句(非常实用的几个技巧)插入数据
           向表中添加一个新记录,你要使用 sql INSERT 语句。这里有一个如何使用这种语句的例子:
           INSERT mytable (mycolumn ......

oracle常用经典SQL查询

oracle常用经典SQL查询
常用SQL查询:
 
1、查看表空间的名称及大小
 
select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size
from dba_tablespaces t, dba_data_files d
where t.tablespace_name = d.tablespace_name
group by t.tablespace_name;
 
2、查看表空间物理文件的名称 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号