Kann mir jemand sagen, welches ist er besser in MySQL whin, wenn es darum geht, die Zeilenanzahl einer Tabelle zu finden: ist es besser zu tun
%Vor% oder um die Zeilenanzahl in der Tabelle TABLE
in INFORMATION_SCHEMA
?
Dies wäre eine häufige Operation zum Berechnen der Seitennummerierung für Seiten?
Ich sollte hinzufügen, dass Tabellen höchstens einige tausend Zeilen haben.
Danke
Martin O'Shea.
In MyISAM
, diese Abfrage:
ist sofort verfügbar, da es in den Metadaten der Tabelle enthalten ist. Daher ist es nahezu freigestellt, diese Abfrage auszugeben, und es wird immer das richtige Ergebnis erhalten.
In InnoDB
zählt diese Abfrage Zeilen nacheinander, was einige Zeit dauern kann.
Wenn Sie also den genauen Wert von COUNT(*)
nicht benötigen, können Sie INFORMATION_SCHEMA
abfragen.
Ich würde auch die Verwendung von SQL_CALC_FOUND_ROWS
und SELECT FOUND_ROWS()
in Erwägung ziehen, wenn Sie COUNT(*)
zu langsam finden.