【发布时间】:2017-04-15 01:07:53
【问题描述】:
默认 find() 是否隐式按 _id 排序?
换句话说,下面列出的 2 行 mongo 是否等效?
db.collection.find().sort( { "_id" : 1 } )
db.collection.find()
【问题讨论】:
标签: mongodb
默认 find() 是否隐式按 _id 排序?
换句话说,下面列出的 2 行 mongo 是否等效?
db.collection.find().sort( { "_id" : 1 } )
db.collection.find()
【问题讨论】:
标签: mongodb
如果没有定义sort,则游标使用自然顺序。
https://docs.mongodb.com/manual/reference/method/cursor.sort/#return-natural-order
结果排序
除非你指定 sort() 方法或使用 $near 运算符,否则 MongoDB 不保证查询结果的顺序。
回归自然
$natural 参数根据它们在数据库中的自然顺序返回项目。此排序是内部实现功能,您不应依赖其中的任何特定结构。
大部分时间是插入顺序,但这并不能保证。
【讨论】:
find() 与 find().sort( { "$natural": 1 } ) 相同