对 MySQL 查询的结果进行计数
可以使用多种方法检索 MySQL 查询返回的行数:
迭代结果
简单地循环结果集并计算行数。虽然这种方法很简单,但效率不是很高。
使用 MySQL 函数
MySQL 提供 mysql_num_rows 函数来计算结果中的行数。此函数在客户端库中公开,例如 PHP 中的 mysqli_num_rows:
<code class="php">$result = mysqli_query($link, "SELECT * FROM table1"); $num_rows = mysqli_num_rows($result);</code>
使用 COUNT(*) 进行选择性计数
要对符合特定条件的行进行计数,使用 COUNT(*) 聚合函数。例如:
<code class="sql">SELECT COUNT(*) FROM foo WHERE bar= 'value';</code>
使用 LIMIT 时获取总行数
如果您的查询包含 LIMIT 子句,则可以使用 SQL_CALC_FOUND_ROWS 和 FOUND_ROWS() 检索总行数在没有 LIMIT 的情况下返回的行数:
<code class="sql">SELECT SQL_CALC_FOUND_ROWS * FROM foo WHERE bar="value" LIMIT 10; SELECT FOUND_ROWS();</code>
注意: 在 MySQL 8.0.17 及更高版本中不推荐使用 SQL_CALC_FOUND_ROWS。建议发出单独的查询来计算计数。
以上是如何统计 MySQL 查询的结果?的详细内容。更多信息请关注PHP中文网其他相关文章!