如上所示的一个sql查询,在hourflag字段已经加了索引的状况下 ,仍然使用的是ALL扫描全表mysql
查资料得出缘由是由于mysql优化器认为走全表扫描更快sql
那么此时就须要告诉优化器,强制使用XXX索引,能够增快查询速度,mysql优化
此时把sql给改为优化
explain SELECT city_name, hourflag, eletricflag FROM t_eletric_segment_info force index(index_hourflag) WHERE hourflag >= '2019032600' AND hourflag <= '2019040123'
关键就是where前面的这个 force index(index_hourflag)code
此时能够看到,索引生效,查询速度快了5倍blog