【发布时间】:2021-01-17 07:19:18
【问题描述】:
我是 MongoDB 的新手,我知道在向 Mongo 数据库中添加元素时,它会自动为您添加的每个元素生成一个 _id 属性。我还读到这个_id 有一个内置的时间戳。所以,我的问题是,是否可以使用此时间戳对一组对象(都具有 _id 属性)进行排序? (使用 Mongo/mongoose 方法或纯 JavaScript)
【问题讨论】:
标签: javascript node.js mongodb mongoose
我是 MongoDB 的新手,我知道在向 Mongo 数据库中添加元素时,它会自动为您添加的每个元素生成一个 _id 属性。我还读到这个_id 有一个内置的时间戳。所以,我的问题是,是否可以使用此时间戳对一组对象(都具有 _id 属性)进行排序? (使用 Mongo/mongoose 方法或纯 JavaScript)
【问题讨论】:
标签: javascript node.js mongodb mongoose
您可以直接按_id 本身排序,它会带来按创建日期排序的文档。例如,如果你想要一个后代顺序(最新文档优先),那么:
db.collectionName.find().sort({_id: -1})
如果您想要其他方式,只需将-1 更改为1。
考虑到使用的创建日期最多为秒,因此在同一秒内创建但具有不同毫秒的文档可能不会按预期排序。
【讨论】: