性能优化
彩虹咖啡
多愁善感
展开
-
SQL性能优化1
一、问题的提出在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其功能就可,而是要写出高质量的SQL语句,提高系统的可用性。在多数情况下,Oracle使用索引来更快地遍历表转载 2010-06-19 17:43:00 · 466 阅读 · 0 评论 -
SQL性能优化2
<br />1.合理使用索引<br />索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。索引的使用要恰到好处,其使用原则如下: <br />●在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。 <br />●在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引。 <br />●在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。比如转载 2010-06-19 17:55:00 · 670 阅读 · 0 评论 -
sql优化策略1
<br />我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享! <br />(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):<br />ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection tab转载 2010-06-21 11:08:00 · 572 阅读 · 0 评论 -
SQL性能优化3
<br />一般规则<br />这一部分,将看一下一些在书写简单查询语时需要注意的通用的规则。<br />根据权值来优化查询条件<br />最好的查询语句是将简单的比较操作作用于最少的行上。以下两张表,表 1 和表 2 以由好到差的顺序列出了典型查询条件操作符并赋与权值。<br /><br />表 1. 查询条件中操作符的权值操作符 权值 = 10 > 5 >= 5 < 5 <= 5 LIKE 3 <> 0 <br /><br /><br />表 2. 查询条件中操作数的权值操作数 权值 仅常量字符 10转载 2010-06-19 18:00:00 · 1068 阅读 · 0 评论