请教一下分页数据重复的问题

_可乐 2016-07-25 11:24:03

假如有一张100W左右数据的表,根据查询条件进行分页。

问题1:数据在实时发生变化,那么,本来在第一页看到的数据,因为后来又有数据插进来了,获取第二页数据的时候,也包含了部分第一页的数据,也就是看到了重复的内容。

问题2:如果实现缓存的功能,一直实时查询不是办法,但根据页数来缓存,也会造成另一种数据重复的问题。

请教下如何解决,谢谢。
...全文
807 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhh1234h 2017-08-25
  • 打赏
  • 举报
回复
我的想法是,将第一页的第一条的id记录下来,第2页第3页后面等等都带上第一页的id,后面的查询都在满足之前的条件下加上第一页第一条id(包括它)后面的数据的相应页数的数据,当然,更换条件查询时应该是从第一页又重新开始的
昵称测试 2016-11-24
  • 打赏
  • 举报
回复
有个思路是,记住第一次查询时的排序,拉取第二页时直接获取这个排序的某段,但是需要标记client_id ,再次拉取第一页时刷新排序。 只是思路,目前还是实现。
昵称测试 2016-11-24
  • 打赏
  • 举报
回复
不知楼主是怎么解决的? 我也遇到同样问题 要实现的就如百度显示搜索结果一样,每一页是不重复的,但是每次查询时排序都是不一样的,难道百度是一次全部返回所有N页的结果?
_可乐 2016-07-30
  • 打赏
  • 举报
回复
引用 3 楼 qq_23033339 的回复:
[quote=引用 2 楼 xuzuning 的回复:] 分页是需要传递查询条件的,那么不妨再多传递一个条件 以一般倒序排列分页为例,你只需多传递一个当前页最小id,以使下一页的id 都小于他即可
应该是传他排序的字段吧!ID也不一定能行[/quote] 解决不了,排序的条件不止一个,也有重复的值
cwk44 2016-07-30
  • 打赏
  • 举报
回复
其实我觉得没必要解决,看到重复的就重复咯,客户端的话做个去重就行了。 如果真想解决,设置一个10页的缓存,缓存几分钟更新一次。
下雨的声音丶 2016-07-26
  • 打赏
  • 举报
回复
引用 2 楼 xuzuning 的回复:
分页是需要传递查询条件的,那么不妨再多传递一个条件 以一般倒序排列分页为例,你只需多传递一个当前页最小id,以使下一页的id 都小于他即可
应该是传他排序的字段吧!ID也不一定能行
xuzuning 2016-07-26
  • 打赏
  • 举报
回复
分页是需要传递查询条件的,那么不妨再多传递一个条件 以一般倒序排列分页为例,你只需多传递一个当前页最小id,以使下一页的id 都小于他即可
ayzen1988 2016-07-26
  • 打赏
  • 举报
回复
鱼与熊掌不能兼得,选择一种你能接受的方式

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧