Oracle 优化
maqinqin
这个作者很懒,什么都没留下…
展开
-
oracle查询效率(三)
避免在索引列上使用NOT 通常, 我们要避免在索引列上使用NOT, NOT会产生在和在索引列上使用函数相同的影响. 当ORACLE”遇到”NOT,他就会停止使用索引转而执行全表扫描.(22) 避免在索引列上使用计算.WHERE子句中,如果索引列是函数的一部分.优化器将不使用索引而使用全表扫描. 举例: 低效: SELECT … FROM DEPT WHERE SAL * 12 > 25000;转载 2009-07-29 22:29:00 · 1649 阅读 · 1 评论 -
Oracle中SQL语句执行效率的查找与解决
本文详细介绍了Oracle中SQL语句执行效率问题的查找与解决的方法。 一、识别占用资源较多的语句的方法(4种方法) 1.测试组和最终用户反馈的与反应缓慢有关的问题。 2.利用V_$SQLAREA视图提供了执行的细节。(执行、读取磁盘和读取缓冲区的次数) ? 数据列 EXECUTIONS:执行次数 DISK_READS:读盘次数 COMMAND_TYPE:命令类型(3:select,转载 2009-07-29 22:35:00 · 1336 阅读 · 0 评论 -
oracle查询效率(二)--in and exist
in 与 exist 的语法比较: select × from 数据表 t where t.x in (...) 括号内可以是符合t.x字段类型的值集合,如(1,2,3),但如果t.x是number类型的时候,似乎这样的写法会出问题;也可以是通过另外的select语句查询出来的值集合,如(select y from 数据表2 where ...)。原创 2009-07-29 22:29:00 · 1848 阅读 · 0 评论 -
控制sql查询走索引
一、问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不转载 2009-07-29 22:31:00 · 2476 阅读 · 0 评论 -
oracle查询效率(一)
ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. (2) W原创 2009-07-29 22:27:00 · 706 阅读 · 0 评论