前端的键集分页仅用于下一个和上一个吗?因为我了解到了这一点,所以我可以用N保留它的先前和。下一个
在第一页说这个查询,
SELECT * FROM nameTable ORDER BY ASC id LIMIT 10
,我们将最后一个ID保存在N
,然后用于下一个SELECT * FROM nameTable WHERE id > N ORDER BY ASC id LIMIT 10
,如果以前只是使用WHERE id < N
?
如果Client中要跳转到第10页还是返回第3页,该怎么办?
你们都能告诉我该怎么做吗,可以使用keyset
吗?
答案 0 :(得分:0)
如果要转到上一页,请记住id
的下限和上限。
要向前滚动3页,请使用LIMIT 30 OFFSET 20
而不是LIMIT 10
。要跳至第X页,请计算X与当前页面之间的差,并将该差乘以每页的行数。
一切都很简单
答案 1 :(得分:0)
使用键集分页您无法跳至给定页面。
您可以仅转到第一,最后一个和下一个。
正如Laurenz解释的那样,您仍然可以从当前立场上移动/跳过数字“页面” ,但我不确定该用例是什么。
键集分页的主要目的是避免使用偏移/跳过-限制大数据集,但是如果要跳转到确切的页面,则必须偏移/跳过关键字。
通常情况下,下一个和上一个功能使用良好的搜索可以提供足够的用户体验:)