为了账号安全,请及时绑定邮箱和手机立即绑定

MySql Innodb 一条简单sql查询耗时问题

MySql Innodb 一条简单sql查询耗时问题

慕虎7371278 2018-08-21 10:09:57
Mysql 同一条sql语句,只是查询条件不一样。第一次查询结果17W,耗时11s;第二次查询结果21W,耗时161s。Duration差不多,Fetch差距和结果数据量不成正比。17:14:26    select ID from TB1 where DomainID=@DomainID and WorkDate between '2018-05-05' and '2018-05-21'    178854 row(s) returned    0.015 sec / 11.453 sec17:15:01    select ID from TB1 where DomainID=@DomainID and WorkDate between '2018-05-01' and '2018-05-21'    215679 row(s) returned    0.093 sec / 161.610 sec
查看完整描述

1 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

mysql的优化器并不完美。在执行第二个sql时,可能优化器认为,使用ix_tb_wdate这个索引的代价比ix_tb_did大。使用ix_tb_wdate这个索引时是索引范围扫描,它的性能也低于ref。


查看完整回答
反对 回复 2018-09-06
  • 1 回答
  • 0 关注
  • 653 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信