为什么建立分区了,select * from table_name partition(part_name)还是全表扫描呢?

[复制链接]
查看11 | 回复5 | 2007-9-4 17:08:41 | 显示全部楼层 |阅读模式
怎么不是分区扫描啊?
回复

使用道具 举报

千问 | 2007-9-4 17:08:41 | 显示全部楼层
select * from table_name
where part_name = 'A'也是全表扫描!为什么?
回复

使用道具 举报

千问 | 2007-9-4 17:08:41 | 显示全部楼层
最初由 edeed 发布
[B]select * from table_name
where part_name = 'A'也是全表扫描!为什么? [/B]


是根据什么建的分区呢?
没有索引吧?
这个语句本来就是全表扫描的。
回复

使用道具 举报

千问 | 2007-9-4 17:08:41 | 显示全部楼层
如果你建了local index,且在查询条件中,就会 TABLE ACCESS BY LOCAL INDEX ROWID
INDEX RANGE SCAN
回复

使用道具 举报

千问 | 2007-9-4 17:08:41 | 显示全部楼层
你得用explan plan去看,有partition_start和partiton_stop,这是一个分区的全部扫描,不过是sqlplus的autotrace不能显示出这个信息而已.
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行