sql >> Database >  >> RDS >> Mysql

In MySQL 5 is SELECT COUNT(1) FROM table_name erg traag

Het tellen van alle rijen in een tabel is een erg langzame bewerking; je kunt het niet echt versnellen, tenzij je bereid bent om ergens anders te tellen (en dat kan natuurlijk niet synchroon lopen).

Mensen die MyISAM gewend zijn, denken vaak dat ze count(*) "gratis" krijgen, maar dat is niet zo. MyISAM speelt vals door geen MVCC te hebben, wat het vrij eenvoudig maakt.

De query die u laat zien, is een volledige indexscan van een niet-null-index, wat over het algemeen de snelste manier is om de rijen in een innodb-tabel te tellen.

Het is moeilijk om op basis van de informatie die u heeft gegeven te raden wat uw toepassing is, maar over het algemeen kunnen gebruikers (enz.) het aantal rijen in grote tabellen goed benaderen.



  1. Een database maken op basis van een sjabloon in Access 2016

  2. Let op:Array naar string conversie in

  3. DB-schema voor RBAC met meerdere rollenniveaus

  4. MySQL-zelfstudie - MySQL-serverlogboeken beheren:roteren, comprimeren, behouden en verwijderen