衆所周知,增長索引是提升
查詢仍然不使用索引,這種狀況嚴重影響性能,這裏就簡單總結幾條
若是
若是列key均勻分佈在1和100之間,下面的
查詢使用索引就不是很好:select * from table_name where key>1 and key<90;
www.2cto.com
若是or前的條件中的列有索引,然後面的列沒有索引,那麼涉及到的索引都不會被用到,例如:select * from table_name where key1='a' or key2='b';
查詢也不會
若是索引列不是複合索引的第一部分,則不使用索引(即不符合最左前綴),例如,複合索引爲(key1,key2),則
查詢select * from table_name where key2='b';將不會使用索引
查詢即便key1上存在索引,也不會被使用
若是key1列保存的是字符串,即便key1上有索引,也不會被使用。
www.2cto.com
從上面能夠
MySQL中,有Handler_read_key和Handler_read_rnd_key兩個變量,
看着連個參數的值。