加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

一个索引导致查询缓慢

发布时间:2020-12-12 13:32:39 所属栏目:百科 来源:网络整理
导读:一、环境 centos 6.7 、oracle 11.2,表根据日期按月分区 二、测试 1、查询表存在索引ind_1(org_id,visit_date,visit_no,patient_id) 执行查询语句 执行计划如下: 查询总计时间大约:2分40秒左右。 2、删除索引ind_1(org_id,patient_id) drop index ind_1;
一、环境
centos 6.7 、oracle 11.2,表根据日期按月分区
二、测试
1、查询表存在索引ind_1(org_id,visit_date,visit_no,patient_id)
执行查询语句


执行计划如下:


查询总计时间大约:2分40秒左右。
2、删除索引ind_1(org_id,patient_id)
drop index ind_1;
执行查询语句


执行计划如下:

查询总计时间大约:9秒左右 总结:当表存在索引时,测试1则使用表的索引,导致查询时间达到2分40秒左右,当删除表的索引后,测试2根据表分区查询,时间只有9秒左右。 疑问:把上面的测试语句改成not exists时,在数据库中执行语句时没有使用索引,查询时间只有几秒左右,当把查询语句放到java+mybatis框架后,查询则使用了表的索引,查询时间达到3分钟左右,不明白??求遇到过的大侠解释下。谢谢

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读