今天的问题;如果在10.2.0.3中启用RBO并且尝试使用分层方法;例如,CONNECT BY PRIOR,优化器是否会切换到CBO执行?我有一个很大的RBO 10GR2(不要问!!),我知道统计数据已经过时了,查询就像使用CONNECT BY的狗一样运行。
在v $ sqlarea中,OPTIMIZER_MODE是RULE。我知道使用LEFT OUTERS会强制RULE成本。
有什么想法吗?
答案 0 :(得分:0)
当我的记忆力正确时,您应该能够强制使用RBO:
/*+ RULE */
as optimzier提示。
答案 1 :(得分:0)
我设法弄清楚它不是强制CBO的CONNECT BY,在SELECT子句中有一个RANK()超过分区导致它!