MySQLi count(*)始终返回1

我试图计算表中的行数,并认为这是执行此操作的正确方法:


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

$count = $result->num_rows;

但是计数总是返回(int)1。如果我在phpMyAdmin中使用相同的查询,则会得到正确的结果。它位于表格中,因此我也尝试进行测试$count[0],但是返回了NULL。


什么是正确的方法?


MMTTMM
浏览 914回答 3
3回答

qq_笑_17

您必须获取一条记录,它将包含Count()的结果$result = $db->query("SELECT COUNT(*) FROM `table`");$row = $result->fetch_row();echo '#: ', $row[0];

长风秋雁

始终尝试进行关联提取,这样您就可以在多种情况下轻松获得所需的结果这是一个例子$result = $mysqli->query("SELECT COUNT(*) AS cityCount FROM myCity")$row = $result->fetch_assoc();echo $row['cityCount']." rows in table myCity.";$result->close();

皈依舞

它的样本。$query="select count(*)as count from users";$result=$connection->query($query);$count=mysqli_fetch_assoc($result)["count"];echo $count;
打开App,查看更多内容
随时随地看视频慕课网APP