嗯,是CBO。你要分析SQL的性能可以使用OEM带的sql analyze,它会告诉你SQL的性能结果。
其它俺也了解的不多,一起学习。

解决方案 »

  1.   

    这个几句话也说不完的,可分析的对象包括表、索引、直方图
    方法1: analyze table tab_name compute statistics;
    2:用DBMS_STATS程序包 
    建议先了解一下analyze的基本概念,然后使用dbms_stats操作
    CBO只有分析结果才会生效……
      

  2.   

    9i默认情况下的优化模式是Choose,若sql语言所访问的对象都不包含分析信息,那么数据库将采用RBO,如果存在分析信息,数据库就采用CBO。
    CBO是根据统计信息进行开销计算,从而选择执行计划,所以如果SQL语句所访问的表,索引信息分析不全的话,CBO的开销统计也就不完整,因此生成的执行计划可能出现偏差。所以,分析信息CBO选择正确执行计划的基本条件。
    一般来说,分析信息应当及时保证最新,可以用job定时跑。不过分析信息也不一定要时常更新,当表的数据发生大量变化时,应及时进行更新,以免执行计划出现偏差,若执行计划没有出现偏差,那么也可以不那么及时重新统计分析信息。