Mysql
 sql >> Base de données >  >> RDS >> Mysql

Index MySQL ignoré

FORCE est un peu impropre. Voici ce que disent les docs MySQL (c'est moi qui souligne):

Vous pouvez également utiliser FORCE INDEX, qui agit comme USE INDEX (index_list) mais avec en plus qu'un parcours de table est supposé être très coûteux. En d'autres termes, un parcours de table est utilisé uniquement s'il n'y a aucun moyen d'utiliser l'un des index donnés pour trouver des lignes dans le tableau.

Étant donné que vous ne "trouvez" aucune ligne (vous les sélectionnez toutes), une analyse de table est toujours va être le plus rapide, et l'optimiseur est assez intelligent pour le savoir malgré ce que vous lui dites.

Heure d'arrivée :

Essayez d'ajouter un ORDER BY sur la clé primaire une fois et je parie qu'il utilisera l'index.