Sql 具有非粒度排序顺序的无数分页

Sql 具有非粒度排序顺序的无数分页,sql,mongodb,Sql,Mongodb,我有一个快速变化的数据集,正在实现无数的下一个/上一个导航。数据的变化速度足够快,因此基于数值偏移量的查询是不可靠的。这里的传统解决方案是基于排序字段(例如:created_at>X)偏移查询。但是,如果主要排序顺序不是很精细,那么这种方法就不太有效。我的一个想法是: ... 其中(非颗粒=X,颗粒>Y)或非颗粒>X,顺序为。。。 然而,我对在MongoDB中实现上述伪查询并不满意:它本质上是两个独立的查询 当主排序不是细粒度的,但次排序顺序是细粒度的时,有没有更优雅的方法来实现有效的无编号

我有一个快速变化的数据集,正在实现无数的下一个/上一个导航。数据的变化速度足够快,因此基于数值偏移量的查询是不可靠的。这里的传统解决方案是基于排序字段(例如:created_at>X)偏移查询。但是,如果主要排序顺序不是很精细,那么这种方法就不太有效。我的一个想法是:


... 其中(非颗粒=X,颗粒>Y)或非颗粒>X,顺序为。。。

然而,我对在MongoDB中实现上述伪查询并不满意:它本质上是两个独立的查询


当主排序不是细粒度的,但次排序顺序是细粒度的时,有没有更优雅的方法来实现有效的无编号分页查询?

如果您使用的是MongoDB,您可以使用
\u id:{$gt:last\u bson\u id}
,最低有效位是序列号,可以方便地解决任何粒度问题。

我的主要排序顺序不是基于创建时间,而是基于文档上的一个(非粒度)字段。在该字段上简单的$gt或$lt不是很有用的,所以我需要将它与次要排序结合起来,该次排序是颗粒的,不在文档上创建一个字段,它是非纹理字段和细粒度字段的组合,这样它将适当排序,然后在该字段上排序?这实际上会非常有效。它还支持更简单的索引