Méthode de volume de données de table de requête MySQL : 1. Utilisez l'instruction "SELECT COUNT(*) FROM table name" pour interroger. COUNT peut renvoyer le nombre de données récupérées ; 2. Utilisez la "SELECT SQL_CALC_FOUND_ROWS 1 FROM table name limit 1" ; instruction à interroger.
L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.
1. La méthode
SELECT COUNT(*) FROM 表名;
la plus couramment utilisée est précise, mais si le volume de données est important (plus d'un million), elle est relativement lente.
2. J'ai trouvé une méthode en ligne qui serait plus rapide que count(*), mais l'autotest ne l'a pas vérifiée.
SELECT SQL_CALC_FOUND_ROWS 1 FROM 表名 limit 1; SELECT found_rows() AS rowcount;
Les deux éléments ci-dessus présentent des inconvénients. Une seule table peut être interrogée à la fois.
3. Interrogez le volume de données de toutes les tables de la bibliothèque actuelle
SELECT TABLE_NAME,TABLE_ROWS FROM information_schema.`TABLES` WHERE TABLE_SCHEMA = (SELECT database()) ORDER BY TABLE_ROWS DESC;
TABLE_ROWS est le volume de données de la table, mais vous constaterez que la valeur obtenue en exécutant select count(*) est différente !
Raison :
Par défaut, lorsque mysql ajoute ou supprime une table, il ne mettra pas automatiquement à jour le champ table_rows de la table tables dans la bibliothèque information_schema. En recherchant sur Internet, j'ai trouvé que seulement 10 % du nombre de lignes le seraient. changer automatiquement. Collection (à vérifier)
Apprentissage recommandé : tutoriel vidéo mysql
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!