首页>计算机>Oracle认证>应用技术>正文
思科应用技术:浅谈Oracle中优化SQL的原则

www.zige365.com 2008-8-18 16:06:03 点击:发送给好友 和学友门交流一下 收藏到我的会员中心
  1。已经检验的语句和已在共享池中的语句之间要完全一样

    2。变量名称尽量一致

    3。合理使用外联接

    4。少用多层嵌套

    5。多用并发

    语句的优化步骤一般有:

    1。调整sga区,使得sga区的是用最优。

    2。sql语句本身的优化,工具有explain,sql trace等

    3。数据库结构调整

    4。项目结构调整

    写语句的经验:

    1。对于大表的查询使用索引

    2、少用in,exist等

    3、使用集合运算

    1.对于大表查询中的列应尽量避免进行诸如

   To_char,to_date,to_number等转换

    2.有索引的尽量用索引,有用到索引的条件写在前面

   如有可能和有必要就建立一些索引 

    3.尽量避免进行全表扫描,限制条件尽可能多,以便更快

   搜索到要查询的数据

    人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面我将从这三个方面分别进行总结:

    为了更直观地说明问题,所有实例中的SQL运行时间均经过测试,不超过1秒的均表示为(< 1秒)。

    测试环境--
    主机:HP LH II
    主频:330MHZ
    内存:128兆
    操作系统:Operserver5.0.4
    数据库:Sybase11.0.3

本新闻共4页,当前在第1页  1  2  3  4  

我要投稿 新闻来源: 编辑: 作者:
相关新闻
思科应用技术:oracle里面使用临时表解决表冲突一例
思科应用技术:提高ORACLE数据库的查询统计速度
思科应用技术:windows优化系统后oracle9i本地连接失败
思科应用技术:在Oracle中获取磁盘空间的使用情况
思科应用技术:Oracle中Decode()函数使用技巧