首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

索引失效的有关问题

2012-12-29 
索引失效的问题 select * from CARDINFO_154 where ROWNUM1 ANDSTART_182 190000001157362 会使用索

索引失效的问题
 select * from CARDINFO_154 where ROWNUM=1 AND   START_182 = '190000001157362' 
会使用索引 
select * from CARDINFO_154 where ROWNUM=1 AND   START_182 <= '190000001157362' AND  END_182 >= '190000001157362'
也会使用索引 COST 4


select * from CARDINFO_154 where ROWNUM=1 AND   START_182 = '190000001157362' 
 union all
 select * from CARDINFO_154 where ROWNUM=1 AND   START_182 <= '190000001157362' AND  END_182 >= '190000001157362'

不会使用索引 COST 3000多


我对 start_182  end_182 都建了索引  start_182和end_182也建了组合索引
数据量在60W左右


[解决办法]
执行一下统计分析试试,dbms_stats.gather_table_stats('大写用户名','大写表名');
[解决办法]
 奇怪,把执行计划贴出来看看?
[解决办法]
这问题比较复杂,最好贴出表的定义,索引定义,执行语句及其执行计划等详细信息,大家才能帮你分析分析索引失效的有关问题
[解决办法]
我对 start_182  end_182 都建了索引  start_182和end_182也建了组合索引
------------
为什么建这么多索引。为什么不直接建组合索引。

热点排行
Bad Request.