Bonjour,
J'aimerais savoir ce qui est mieux, utiliser un mysql_num_rows ou un count ?
Grosse différence de temps d'éxécution ?
Merci
Version imprimable
Bonjour,
J'aimerais savoir ce qui est mieux, utiliser un mysql_num_rows ou un count ?
Grosse différence de temps d'éxécution ?
Merci
ça dépend, t'as besoin que du nombre de données, ou aussi les données ?
Ok compris ;)
Count quand j'ai aps besoin des données et mysql_num_rows dans leur cas.
Mais la différence de temps est réellement différent ?
C'est pour de la pagination ?
Si oui, il vaut mieux utiliser cela : SQL_CALC_FOUND_ROWS. Ça permet de récupérer :
- le nombre de ligne total de la table comme si la clause LIMIT n'était pas indiquée (voir doc).
- les données avec la contrainte LIMIT
Si ce n'est pas pour de la pagination, le count(*) est beaucoup plus rapide. Le moteur (MyISAM) va simplement utiliser les index sans parcourir toute la table comme pourrait le faire mysql_num_rows.
Donc le count(*) sans hésitation.
On m'a déconseillé l'utilisation de SQL_CALC_FOUND_ROWS car il semblerait qu'avec un site avec beaucoup de visiteurs, ca ne fonctionne pas correctement.