所谓id偏移 主要是使用limit 进行分页时所用的
先上图
一个0.185秒 一个0.249
这是因为 偏移量 的原因
偏移量 = (页码 - 1) x 页的大小
lilit 0,20
//0是偏移量
lilit 1000, 20
//1000是偏移量
为什么偏移量越大所耗时间越大呢
很简单 lilit 1000, 20
数据库 返回的不仅仅是你看到的那20行,而是从第一行开始到(1000+20)行的记录,只不过最后又将那前1000行舍弃了而已,但是性能可没少费。
当表的主键是自增的,可以使用id限定查询,过程是:
当已经查询了某页的数据后,记录下该页最后一行记录的主键id值,查询下一页时就可以使用此主键id做限定:
比如
SELECT * FROM `pf_customer` limit 0,20;
你最后一条的id是20
那么你可以
select * from `pf_customer` where id > 20 limit 0, 20
这样就只查询了20条