翻页数据缺失思考总结
翻页数据缺失的原因
-
由于翻页的时候,数据头部移除导致。
-
eg:
当前数据 :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
第一次查询参数: offset 0 limit 10
第一次查询结果:1 2 3 4 5 6 7 8 9 10
数据变更
当前数据: 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
第二次查询参数: offset 10 limit 10
第二次查询结果:13 14 15 16 17 18 19 20 21 22
数据11 12 就是缺失数据
解决方案
- 请求带标识
- 实现
- 每次请求带着标识fromId和limit,查询根据标识查询数据,防止漏掉数据。
- 适用场景
- 查询的数据有标识的场景
- 实现