order=asc&offset=0&limit=10怎么改
发布网友
发布时间:2022-04-21 03:15
我来回答
共1个回答
热心网友
时间:2022-06-17 16:45
为了方便描述,下面id即指用来排序的字段
使用id > n 的方式,有局限性,但没有 @qinjianxiang 说的那么大。对于id不连续的问题,可以通过翻页的时候同时传入最后一个id方式来解决。比如:
//输出时,找出当前结果集中的最大最小id
//下一页
http://example.com/page.php?last=100
select * from table where id<100 order by id desc limit 10
//上一页
http://example.com/page.php?first=110
select * from table where id>110 order by id desc limit 10
这种方式比较大的缺点是,如果在浏览中有插入/删除操作,翻页不会更新,而总页数可能仍然是根据新的count(*) 来计算,最终可能会产生某些记录访问不到。为了修补这个问题,可以继续引入当前页码以及在上次翻页以后是否有插入/删除等影响总记录数的操作并进行缓存。