有一个表中多个字段有索引,跟其它表关联查询都能用上,很快!
现在我对新建一个 DECODE 函数的索引,这函数是对其中一个已经有索引的字段操作的,
现在单独用这表并使用DECODE索引来查很快了,但一关联其它表来查,原有的索引都没用上,
进行了全表扫描,很慢!
虽然可以对第二张表指定使用索引,但如果我要关联五张表呢?
请高手指点下问题出在哪里?
怎么才能快起来?
谢谢了 !
现在我对新建一个 DECODE 函数的索引,这函数是对其中一个已经有索引的字段操作的,
现在单独用这表并使用DECODE索引来查很快了,但一关联其它表来查,原有的索引都没用上,
进行了全表扫描,很慢!
虽然可以对第二张表指定使用索引,但如果我要关联五张表呢?
请高手指点下问题出在哪里?
怎么才能快起来?
谢谢了 !
对本表用到了那个DECODE 索引,对另一个表做了全表扫描。
对表新加索引都要重新进行分析过吗?
这里每个表都是用了几年的了,应该早分析过了。
怎么做表分析?
什么时候应该做表分析?谢谢指点
analyze table <表名> compute statistics;
show parameter query
query_rewrite_enabled boolean TRUE
query_rewrite_integrity string enforced
query_rewrite_enabled 为 FALSE
但要设置 为TRUE 才生效是 8I 的要求,我这里 9I 已经没有这限制了,实际测试单个表查也使用了那函数索引,但一关联其它表的话,除了那函数索引外,其它表都做了全表扫描!
不知道是不是没有分析表的原因?下班后分析下看看。