equids Posté 7 Août 2008 Partager Posté 7 Août 2008 Bonjour, je cherche la manière la moins gourmande en ressource de compter le nombre de lignes d'une table. Voila ce que j'ai, est-ce la meilleure solution ? $sql = "SELECT COUNT(*) FROM table";$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());$row = mysql_fetch_row($req);echo $row[0]; Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kioob Posté 7 Août 2008 Partager Posté 7 Août 2008 Hello, ça dépend un peu du contexte, mais dans la majeure partie des cas oui c'est ça. Lien vers le commentaire Partager sur d’autres sites More sharing options...
equids Posté 8 Août 2008 Auteur Partager Posté 8 Août 2008 Hello, ça dépend un peu du contexte, mais dans la majeure partie des cas oui c'est ça. Le contexte, c'est que j'ai une table dont il faut que je sorte le nombre de ligne dans une variable, sans avoir d'autre info a "demander" Je voulais savoir quelle est la meilleure méthode pour le faire ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kioob Posté 8 Août 2008 Partager Posté 8 Août 2008 Si tu n'as pas d'autres requêtes à faire sur la table, le count(*) est très certainement le plus rapide pour du MyISAM oui. Après pour de l'InnoDB ce n'est pas forcément le cas, et un show table status like 'tatable' est peut être plus intéressant bien que moins précis (comme le fait phpMyAdmin par exemple). Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 8 Août 2008 Partager Posté 8 Août 2008 Plutôt que d'effectuer un mysql_fetch_row, tu peux utiliser mysql_result() : $num = musql_result($req, 0); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant