首页 >数据库 >mysql教程 >如何在 MySQL 查询中计算带有 LIMIT 的行数?

如何在 MySQL 查询中计算带有 LIMIT 的行数?

DDD
DDD原创
2024-11-12 11:17:02783浏览

How to Count Rows with LIMIT in MySQL Queries?

使用 LIMIT 计算 MySQL 查询中的行数

使用 LIMIT 子句运行 MySQL 查询时,用户经常面临同时获取总数的挑战符合查询条件的行数。这是由于 LIMIT 的限制,即仅返回特定数量的行。

为了克服此限制,可以采用一种称为子查询方法的技术。为此,请将以下语法合并到您的查询中:

SELECT SQL_CALC_FOUND_ROWS ...;

此语句启动 SQL 级别的行计数,并将计数存储在临时变量中。

要检索计数,运行后续查询:

SELECT FOUND_ROWS();

例如,考虑以下内容查询:

SELECT A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
  cond1, cond2, ..., condN
LIMIT 10

要获取过滤的行和总计数,请使用以下查询:

SELECT SQL_CALC_FOUND_ROWS A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
  cond1, cond2, ..., condN
LIMIT 10;

SELECT FOUND_ROWS();

此技术使用户能够使用 LIMIT 子句有效地计算查询中的行数无需诉诸额外的查询。

以上是如何在 MySQL 查询中计算带有 LIMIT 的行数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn