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

Mysql - clause where plus lente que l'analyse complète

Essayez de changer l'index des deux colonnes (status, id)

Comme je le vois, vous n'avez aucun index sur l'id

La norme ANSI (recherchez "Scalar expressions 125 ") indique que COUNT(*) donner le nombre de lignes d'un tableau :il est destiné à être optimisé dès le départ.

C'est pourquoi COUNT(*) est bien plus rapide que COUNT(id) . COUNT(*) peut utiliser le status indice. COUNT(id) n'utilisera pas cet index et il n'y a pas d'autre index valide

Qu'est-ce que l'index clusterisé et qu'est-ce que le PK ? Vous avez les deux (même si le même index), non ?