关于优化模式的疑惑

[复制链接]
查看11 | 回复4 | 2007-9-26 18:42:10 | 显示全部楼层 |阅读模式
1
在10G里优化模式OPTIMIZE MODE里有FIRST ROWS ,ALL ROWS
目前数据库级别的优化模式是ALL ROWS
请问这个两个区别是什么????
2
我有个效能差的SQL走ALL ROWS是全表扫描
用FIRST ROWS是走索引,快很多
但我用加上/*+RULE/ 让他走RULE模式都不走索引
请问为何????
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
UP
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
First Rows:它与Choose方式是类似的,所不同的是当一个表有统计信息时,它将是以最快的方式返回查询的最先的几行,从总体上减少了响应时间。
All Rows:也就是我们所说的Cost的方式,当一个表有统计信息时,它将以最快的方式返回表的所有的行,从总体上提高查询的吞吐量。没有统计信息则走基于规则的方式。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
在10G中,不用人工统计数据,但现在有个SQL很垃圾,几乎取不出数据出来
加上了INDEX,强行走索引都不认,很郁闷呢
是不是10G采用COST模式,HINTS不能用啦
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
/*+RULE/???
/*+RULE*/
HINTS能用的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行