MySql có thể bỏ qua chỉ mục nếu chỉ mục này có quyền truy cập vào hơn 30% hàng trong bảng. Bạn có thể thử FORCE INDEX [index_name], nó sẽ sử dụng chỉ mục trong mọi trường hợp.
Giá trị của sysvar_max_seeks_for_key cũng ảnh hưởng đến việc chỉ mục có được sử dụng hay không:
-
http://dev.mysql.com /doc/refman/5.0/en/server-system-variables.html#sysvar_max_seeks_for_key
Hãy thử thay đổi giá trị này thành một số nhỏ hơn.
Tìm kiếm các yêu cầu tương tự trên SO.