在进行ORACLE SQL性能优化时,不应仅仅依赖将optimizer_mode参数设置为rule来认定所有语句都会采用基于规则的优化器。无论optimizer_mode参数如何设定,只要满足以下三个条件,就必定采用CBO优化器:1) 使用索引唯一表(IOTs)时,系统会自动选择CBO。2) 从Oracle 7.3版本开始,如果表的Parallel degree选项设为大于1,则系统自动使用CBO,而不受rule提示的影响。3) 除了rule提示以外的任何其他提示都会导致系统自动选择CBO来执行语句。