ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL 优化部分说明

SQL 优化部分说明

原创 Linux操作系统 作者:frog-qs 时间:2011-07-05 13:53:47 0 删除 编辑
SQL 优化部分说明

假设表的字段上有索引,当根据这个字段做查询时,却发现Oracle并没有使用索引?  并且查询条件没有限制索引。 那么Oracle 为什么不走索引?
在CBO 的优化器下,都是根据Cost来选择执行计划,当索引的选择性太低或者Clustering Factor 值太高,这些都可能会造成过高的cost值,
虽然在这种情况下走索引的物理读会明显很低,但是Oracle不能理解,因为它是基于CBO的,Oracle 在执行计划里会选择全表扫描来代替使用索引,这样就造就了低效的SQL.

具体参考:

Oracle Index Clustering Factor 说明
http://blog.csdn.net/tianlesoftware/article/details/6585453

Oracle 索引的维护
http://blog.csdn.net/tianlesoftware/article/details/5680706

Oracle Statistic 统计信息 小结
http://blog.csdn.net/tianlesoftware/article/details/4668723

Oracle alter index rebuild 说明
http://blog.csdn.net/tianlesoftware/article/details/6538928

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22779291/viewspace-701367/,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORA-16009
请登录后发表评论 登录
全部评论

注册时间:2009-10-27

  • 博文量
    132
  • 访问量
    249519