Maison >développement back-end >tutoriel php >Pourquoi MySQLi count(*) renvoie-t-il toujours 1 ?

Pourquoi MySQLi count(*) renvoie-t-il toujours 1 ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-08 13:52:02895parcourir

Why Does MySQLi count(*) Always Return 1?

Dépannage du nombre MySQLi (*) Signalant systématiquement "1"

Lorsque vous essayez de compter le nombre de lignes dans une table MySQL à l'aide de MySQLi, vous pouvez rencontrer un problème où count(*) renvoie toujours 1, malgré le nombre attendu. Cela peut être un problème déroutant, car la requête semble syntaxiquement correcte.

Pour résoudre ce problème, il est important de comprendre que count(*) renvoie un résultat sur une seule ligne, qui doit être récupéré à l'aide de fetch_row(). . Le code suivant montre l'approche correcte :

$result = $db->query("SELECT COUNT(*) FROM `table`");
$row = $result->fetch_row();
echo "Count: ", $row[0];

Dans ce code, la requête est exécutée comme d'habitude, puis la méthode fetch_row() est utilisée pour récupérer la ligne de résultat. La valeur de count(*) est ensuite obtenue à partir de la ligne à l'index 0. Cette approche garantit que vous obtenez le nombre précis de lignes dans le tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn