1. Il y a plus d'un million de données. La vitesse de comptage est extrêmement lente. Veuillez me faire savoir comment l'optimiser.
2.Code :
SELECT
COUNT(*)
FROM
`score`
INNER JOIN `users` ON (
`score`.`UID` = `users`.`UID`
)
WHERE
(`score`.`Score` >= 10)
AND (`score`.`Score` <= 81);
3. Indice
table des utilisateurs
count(id) ne compte pas(*)
Vous rejoignez une table par la gauche Il est recommandé d'ajouter un index à l'UID
.Pourquoi avons-nous besoin de tableaux en ligne pour les statistiques ? Si nous voulons regrouper, ne serait-il pas préférable d'utiliser le groupe par UID ?
L'instruction est simple, l'index est normal et il ne devrait pas être lent. Vous pouvez publier le plan d'exécution via l'instruction expliquer +.
.De plus, la structure de la table des utilisateurs est également publiée. Si l'UID est la clé primaire de la table des utilisateurs, vous pouvez supprimer la connexion de la table
Je ne vois pas la nécessité de connecter des tables. Il suffit de compter le nombre de données en segments fractionnaires. Je ne vois pas que cela ait quelque chose à voir avec la table utilisateur.