以下是分析执行计划的示例演示:假设有一个名为LARGE_TABLE的大表,且username列上没有索引。运行以下SQL语句:SQL> SELECT * FROM LARGE_TABLE WHERE USERNAME = 'TEST'; 查询计划 ----- SELECT STATEMENT Optimizer=CHOOSE (Cost=1234 Card=1 Bytes=14) TABLE ACCESS FULL LARGE_TABLE [:Q65001] [ANALYZED]在这个示例中,第一个操作是TABLE ACCESS FULL LARGE_TABLE,表示对LARGE_TABLE表进行全表扫描。扫描完成后,结果集数据传递到下一个处理步骤,即SELECT STATEMENT操作,它是查询语句的最后一步。Optimizer=CHOOSE指明了查询的优化器模式,即初始化参数中指定的optimizer_mode的值。这并不意味着实际执行时使用了该优化器。决定使用哪种优化器的唯一方法是查看cost部分。如果形式如下所示,则使用的是CBO优化器,cost表示优化器认为执行计划的代价。