1. Terdapat lebih daripada 1 juta keping data Kelajuan pengiraan adalah sangat perlahan
2. Kod:
SELECT
COUNT(*)
FROM
`score`
INNER JOIN `users` ON (
`score`.`UID` = `users`.`UID`
)
WHERE
(`score`.`Score` >= 10)
AND (`score`.`Score` <= 81);
3. Indeks
meja pengguna
kira(id) bukan kira(*)
Anda menyertai jadual dari sebelah kiri Adalah disyorkan untuk menambah indeks pada UID
Mengapa kita memerlukan jadual sebaris untuk statistik Jika kita mahu mengumpulkan, bukankah lebih baik menggunakan kumpulan mengikut UID?
Pernyataannya mudah, indeks adalah normal, dan ia tidak sepatutnya perlahan Anda boleh menyiarkan pelan pelaksanaan melalui explain + statement.
.Selain itu, struktur jadual pengguna juga disiarkan Jika UID ialah kunci utama jadual pengguna, anda boleh mengalih keluar sambungan jadual
Saya tidak nampak keperluan untuk menyambungkan jadual Anda hanya perlu mengira bilangan data dalam segmen pecahan