首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网页上的分页是如何工作的?

问网页上的分页是如何工作的?
EN

Stack Overflow用户
提问于 2012-08-03 12:51:51
回答 2查看 682关注 0票数 1

使数据库中的结果集“可分页”所涉及的原则或实现是什么?

如何在不将记录存储在内存中的情况下对超过一百万条记录进行分页?当有100页时,什么允许从第5页跳到第50页?

我正在寻找一种关于分页是如何完成的伪代码类型的解释。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-03 12:59:41

基本前提是要记住以下几点:

  1. 定义您的页面大小,即每页的记录数和集合中记录的总数。然后你就可以计算有多少页了。var numPages = totalNumRecords / PAGE_SIZE;
  2. Use一个变量来跟踪页码,即Page = 1
  3. Perform一个简单的跳过/取算法,如下所示,您就有了对

进行分页所需的元素

Skip((page - 1)*PAGE_SIZE).Take(PAGE_SIZE);

因此,当您点击结果的数据源时,您将跳到您想要的记录集,并获取规定的数量。希望这是有意义的。

票数 1
EN

Stack Overflow用户

发布于 2012-08-03 12:54:35

通常,在“下一步”按钮的URL中有一些内容,用于修改呈现页面的数据库查询。然后,呈现的页面在下一个URL中颠簸索引。

因此第一页可能是具有限制20 SQL请求,第二页也具有限制20但也具有偏移量20。

因此,在该模型中,基本上一次只加载20个项目,但页面还加载了多少个项目已被偏移到如此胖的位置,并更改了"Next Page“URL。

通常,还会有一个函数来检查您相对于项目总数的位置,以便页面知道它是否应该显示下一个链接。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11789453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档