【问题标题】:Order by timestamp using MongoDB's _id property使用 MongoDB 的 _id 属性按时间戳排序
【发布时间】:2021-01-17 07:19:18
【问题描述】:

我是 MongoDB 的新手,我知道在向 Mongo 数据库中添加元素时,它会自动为您添加的每个元素生成一个 _id 属性。我还读到这个_id 有一个内置的时间戳。所以,我的问题是,是否可以使用此时间戳对一组对象(都具有 _id 属性)进行排序? (使用 Mongo/mongoose 方法或纯 JavaScript)

【问题讨论】:

    标签: javascript node.js mongodb mongoose


    【解决方案1】:

    您可以直接按_id 本身排序,它会带来按创建日期排序的文档。例如,如果你想要一个后代顺序(最新文档优先),那么:

    db.collectionName.find().sort({_id: -1})
    

    如果您想要其他方式,只需将-1 更改为1

    考虑到使用的创建日期最多为秒,因此在同一秒内创建但具有不同毫秒的文档可能不会按预期排序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2013-01-02
      • 2012-10-18
      • 1970-01-01
      • 2016-10-19
      • 1970-01-01
      相关资源
      最近更新 更多