Maison >base de données >tutoriel mysql >Pourquoi le « COUNT(*) » de MySQLi renvoie-t-il parfois 1 au lieu du nombre réel de lignes ?

Pourquoi le « COUNT(*) » de MySQLi renvoie-t-il parfois 1 au lieu du nombre réel de lignes ?

DDD
DDDoriginal
2024-12-10 01:52:08327parcourir

Why Does MySQLi's `COUNT(*)` Sometimes Return 1 Instead of the Actual Row Count?

Pourquoi MySQLi count(*) renvoie toujours 1

Lors du comptage du nombre de lignes dans une table MySQL à l'aide de l'extension MySQLi, le COUNT (*) la fonction peut renvoyer 1 au lieu du nombre attendu.

Pour résoudre ce problème, il est essentiel de récupérer le résultat de la requête. Le code révisé suivant montre l'approche correcte :

// Execute the query
$result = $db->query("SELECT COUNT(*) FROM `table`");

// Fetch the result row
$row = $result->fetch_row();

// Extract the count from the fetched row index 0
$count = $row[0];

En récupérant la ligne et en accédant à son premier index, vous pouvez récupérer le nombre réel de lignes dans la table. Cette méthode donnera le résultat correct, même si COUNT(*) renvoie initialement 1.

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