recherche

Maison  >  Questions et réponses  >  le corps du texte

nosql - MongoDB 如何获取某条记录的相邻记录

比如获取某篇文章的前一篇和后一篇记录,有时间字段created

尝试使用下列语句获取文章

# created 是当前文章的创建时间
# 前一篇
prev_post = db.Post.find({ 'created': { '$lt': created } }, sort = [('created', -1)], limit = 1)
# 后一篇
next_post = db.Post.find({ 'created': { '$gt': created } }, sort = [('created', 1)], limit = 1)

运行的结果是这些记录是跳跃使的,有时候中间会跳过好几条记录,不知道如何解决这个问题
我想可能是我对 find 的理解有误,希望大家指点迷津

PHPzPHPz2765 Il y a quelques jours684

répondre à tous(1)je répondrai

  • 黄舟

    黄舟2017-04-21 10:58:25

    Tout d'abord, il n'y a aucun problème avec la déclaration, mais vous avez utilisé le type time.
    Si le type d'heure est utilisé, il est probable que les enregistrements de temps soient les mêmes. Vérifiez si vos enregistrements ont la même heure.
    Si les conditions le permettent, vous pouvez utiliser _id ou coopérer avec _id pour éviter cette situation.

    répondre
    0
  • Annulerrépondre