要获得使用LIMIT时的总行数,请使用以下语法-select SQL_CALC_FOUND_ROWS * FROM yourTableName LIMIT 0,yourLastValue;
为了理解上述语法,让我们创建一个表。创建表的查询如下-mysql> create table RowsUsingLimit
-> (
-> Id int NOT NULL,
-> Name varchar(10)
-> );
现在,您可以使用insert命令在表中插入一些记录。查询如下-mysql> insert into RowsUsingLimit values(10,'Larry');
mysql> insert into RowsUsingLimit values(9,'Mike');
mysql> insert into RowsUsingLimit values(15,'Sam');
mysql> insert into RowsUsingLimit values(20,'Bob');
mysql> insert into RowsUsingLimit values(1,'Carol');
mysql> insert into RowsUsingLimit values(18,'David');
使用select语句显示表中的所有记录。查询如下-mysql> select *from RowsUsingLimit;
以下是输出-+----+-------+
| Id | Name |
+----+-------+
| 10 | Larry |
| 9 | Mike |
| 15 | Sam |
| 20 | Bob |
| 1 | Carol |
| 18 | David |
+----+-------+
6 rows in set (0.00 sec)
这是查询以获取使用限制时的总行数-mysql> select SQL_CALC_FOUND_ROWS * FROM RowsUsingLimit LIMIT 0,6;
以下是输出-+----+-------+
| Id | Name |
+----+-------+
| 10 | Larry |
| 9 | Mike |
| 15 | Sam |
| 20 | Bob |
| 1 | Carol |
| 18 | David |
+----+-------+
6 rows in set (0.00 sec)