Compter efficacement les enregistrements sur plusieurs tables MySQL
Compter les lignes dans de nombreuses tables de base de données MySQL peut prendre beaucoup de temps. Cet article propose une approche simplifiée.
La requête SQL suivante fournit un nombre total de lignes pour toutes les tables d'une base de données donnée, évitant ainsi les SELECT COUNT(*)
requêtes individuelles pour chaque table :
SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '{your_db}';
Il est important de reconnaître une limitation clé. Pour les tables InnoDB, la valeur TABLE_ROWS
est une estimation utilisée pour l'optimisation des requêtes, et non un décompte précis. Pour obtenir des décomptes exacts, l'utilisation de COUNT(*)
reste nécessaire, même si cette méthode est plus coûteuse en calcul.
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!