Home > Database > Mysql Tutorial > MySQL 关于分页查询一个非常有用的查询参数

MySQL 关于分页查询一个非常有用的查询参数

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-07 16:56:25
Original
1074 people have browsed it

MySQL 的 SELECT 语句中有这么一个参数:SQL_CALC_FOUND_ROWS,这个参数可以配合 MySQL 提供的函数 FOUND_ROWS() 来使用。当我们

MySQL 的 SELECT 语句中有这么一个参数:SQL_CALC_FOUND_ROWS,这个参数可以配合 MySQL 提供的函数 FOUND_ROWS() 来使用。

当我们使用 LIMIT ?,? 进行分页查询时,返回的只是你想要的记录,例如 LIMIT 10 则是返回前 10 条记录,但是整个查询涉及多少条记录我们不知道,需要再次发送一个不带 LIMIT 的查询来获取记录数,以便进行翻页处理。

而利用 FOUND_ROWS() 函数就无需这么麻烦了,试试执行下面的 SQL 语句:

mysql> SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name -> WHERE id > 100 LIMIT 10;
mysql> SELECT FOUND_ROWS();

这个方法在 MySQL 的命令行模式是可行的,在 Navicat 中一起执行也是可行的,但分开执行就不对。

另外,FOUND_ROWS 函数只能在执行 SQL 语句后执行一次,再次执行的话,返回就是 1 。

最后,这个参数和函数都是 MySQL 独有的,如果应用需要支持多种数据库,,建议不要使用。

linux

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
MySQL stops process
From 1970-01-01 08:00:00
0
0
0
Error when installing mysql on linux
From 1970-01-01 08:00:00
0
0
0
phpstudy cannot start mysql?
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template