Gebruik COUNT
, zal de server het verzoek intern anders verwerken.
Bij het doen van COUNT
, zal de server alleen geheugen toewijzen om het resultaat van de telling op te slaan.
Bij gebruik van mysql_num_rows
, zal de server de volledige resultatenset verwerken, geheugen toewijzen voor al die resultaten en de server in de ophaalmodus zetten, wat veel verschillende details met zich meebrengt, zoals vergrendeling.
Zie het als de volgende pseudo-scenario's:
SELECT COUNT(*)
Hé Bob, hoeveel mensen zijn er in de klas?
mysql_num_rows
Hé Bob, stuur alle mensen uit de klas naar mij toe, ... ik tel ze om het aantal mensen zelf te krijgen
Samengevat, bij gebruik van mysql_num_rows
je draagt alle records over aan de klant en de klant zal de telling zelf moeten berekenen.