MySql优化之强制索引-LMLPHP

如上所示的一个sql查询,在hourflag字段已经加了索引的情况下 ,仍然使用的是ALL扫描全表

查资料得出原因是因为mysql优化器认为走全表扫描更快

那么此时就需要告诉优化器,强制使用XXX索引,可以增快查询速度,

此时把sql给改成

explain
SELECT
	city_name,
	hourflag,
	eletricflag
FROM
	t_eletric_segment_info
force index(index_hourflag)
WHERE
	hourflag >= '2019032600'
AND
	hourflag <= '2019040123'

此时可以看到,索引生效,查询速度快了5倍

MySql优化之强制索引-LMLPHP

04-02 19:09