【问题标题】:Next and previous documents下一个和上一个文档
【发布时间】:2013-10-01 18:38:37
【问题描述】:

我正在制作一个图片库。每个图像都有一个_id,当我查看图像时,我想要接下来的 3 张图像和之前的 3 张图像。我怎样才能在 mongodb 查询中得到这个?我认为我可以使用 _id 排序,因为这是不可排序的。也许使用 mapReduce 或一些特定的查询?

【问题讨论】:

标签: mongodb sorting


【解决方案1】:

是的,您可以按_id 排序。使用两个查询:一个用于 3 before 和一个用于 3 after。

python中的一个例子:

my_id = coll.find()[20]['_id']
coll.find({ '_id': {'$lt': my_id}}).sort([('_id', -1)]).limit(3)  # before
coll.find({ '_id': {'$gt': my_id}}).sort('_id').limit(3)  # after

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-15
    • 2021-05-11
    • 2021-12-15
    • 2021-02-01
    • 2020-07-23
    • 1970-01-01
    • 2011-12-14
    相关资源
    最近更新 更多