0

在 php-mysql 中,如何计算 SELECT 查询中返回的行数?
让我们考虑SELECT一下这样的查询:

$q = "SELECT * from users LIMIT 20,60"

但是如果记录总数只是例如 55,结果是用户从 20 到 55,总数为 35 而不是 40!
如何在不两次查询数据库的情况下获得数字 35?
现在我这样做:

$q = "SELECT COUNT(*) from users LIMIT 20, 60";
$result = mysqli_query($db_connection, $1);
$count = mysqli_fetch_row($result);
$count = $count[0];

但是在这里我两次查询数据库,我认为这不太好。我知道我可以在不考虑, using and
的情况下获得总行数,但这不是我的情况,因为我想考虑. 谢谢!LIMITSQL_CALC_FOUND_ROWSFOUND_ROWS()LIMIT

4

2 回答 2

4

你想要num_rows

$count = $result->num_rows;
于 2013-06-21T16:24:48.630 回答
0

您可以使用

$q = "SELECT COUNT(*) from users LIMIT 20, 60";
$result = mysqli_query($db_connection, $1);
$count = mysqli_num_rows($result);

mysqli_num_rows() 返回否。行数

于 2013-06-21T16:38:13.917 回答