很奇怪,表都做了分析,可是为什么大部分SQL都不使用索引呀。。
尤其是几个大表都只做全表扫描是什么东东可能造成这种好像全局的影响呢?(不是某个SQL,是很多SQL都是这个现象)一般只是个别表才对呀,然后针对性的优化使查询计划更好就行,可是不知怎么得,很多查询都全表扫描
一般就算没分析表,也应该是RBO方式吧,那也会用点索引呀,怎么会那么多模块中的查询和联接操作中表都是全表扫描呢??很不理解,感觉是数据库本身哪设了还是少做了什么所置,但不知道是哪??望大虾指点!!
尤其是几个大表都只做全表扫描是什么东东可能造成这种好像全局的影响呢?(不是某个SQL,是很多SQL都是这个现象)一般只是个别表才对呀,然后针对性的优化使查询计划更好就行,可是不知怎么得,很多查询都全表扫描
一般就算没分析表,也应该是RBO方式吧,那也会用点索引呀,怎么会那么多模块中的查询和联接操作中表都是全表扫描呢??很不理解,感觉是数据库本身哪设了还是少做了什么所置,但不知道是哪??望大虾指点!!
执行计划:
TABLE ACCESS FULL之后请教DBA后,发现是数据统计的问题,具体的解决办法是执行下面的语句:analyze table PROD_PARTS compute statistics;
ANALYZE TABLE PROD_PARTS COMPUTE STATISTICS FOR ALL INDEXED COLUMNS;
analyze table PROD_PARTS compute statistics for table for all indexes for all indexed columns;