Skip to content
目录概览

MySQL 分页如何优化?

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1)

sql
-- 检索记录行 6-15
SELECT * FROM table LIMIT 5,10;  
1
2

为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:

sql
-- 检索记录行 96-last. 
SELECT * FROM table LIMIT 95,-1;
1
2

如果只给定一个参数,它表示返回最大的记录行数目:

sql
-- 检索前 5 个记录行 
SELECT * FROM table LIMIT 5;
1
2

换句话说,LIMIT n 等价于 LIMIT 0,n。