oracle查看索引是否生效 oracle用了索引反而慢了,为什么?
oracle用了索引反而慢了,为什么?要使用索引查询一段数据,首先需要访问索引数据,然后访问表数据。如果整个表被扫描两次,则只访问表数据,并且只执行一次读取操作。因此,如果查询结果占表数据的50%以上
oracle用了索引反而慢了,为什么?
要使用索引查询一段数据,首先需要访问索引数据,然后访问表数据。如果整个表被扫描两次,则只访问表数据,并且只执行一次读取操作。因此,如果查询结果占表数据的50%以上,则使用索引的速度会很慢。考虑到单个读取操作可以读取多条数据,而且索引的结构比表的结构复杂,查询结果可能会比较慢,占表数据的20%以上,使用索引不如全表扫描。因此,Oracle优化器需要根据成本频繁地更新统计数据,这便于优化器判断使用全表扫描和索引的成本