Mongodb文档没有按正确的顺序排列
Mongodb documents are not arranged in proper order
当我手动将 5 行插入 mongodb 数据库时,我可以看到 id 字段的递增顺序,但是当我插入具有更大 id 的第 6 行时,当我查询集合时,没有首先出现。 如何按ID字段的递增顺序插入?请帮忙
发生的情况是 mongodb 为你生成一个_id
字段。您可以在此处阅读有关它的更多信息:创建自动递增序列字段
更具体地说是关于 ObjectId。
但实际上_id
的唯一约束是它是唯一的,因此您可以推出自己的顺序实现,但不建议这样做。
通常在MongoDB中,您不会对_id字段或任何字段使用自动增量模式,因为它无法针对具有大量文档的数据库进行扩展。通常,默认值 ObjectId 更适合_id。
如果您确定自己是唯一一个将值插入数据库的人,则始终可以从 ObjectId 获取时间戳以查看某种增量感觉。
但是,如果您只想按插入顺序检索值,我建议您按照@ibininja建议进行操作。
从mongodb获取数据时,您必须这样做。MongoDB自然插入它不会保留插入时的顺序(它对文档中的字段有效,但对它自己的文档不保留
)。更新:我没有尝试过这个,但是您可以在插入时使用有序运算符来保持顺序。
要按顺序获取结果,请使用 sort()
例:
db.collection.find({}).sort("_id":1)
希望有帮助
相关文章:
- 从数组中删除重复条目,并在javascript中按顺序排列
- Javascript从数组中随机选择并按字母顺序排列
- 如何在php中按元素按字母顺序排列json文件
- 如何根据 js 中每个单词的第 n 个字母按字母顺序排列列表
- Javascript将生日按数组顺序排列
- 列出按字母顺序排列的 javascript 和字母标题
- 按字母顺序排列字符串
- 排列<p>使用jQuery按日期顺序排列的元素
- 确定字符串中的所有字母是否按JavaScript字母顺序排列
- 按数组顺序排列对象
- 按字母顺序排列列表
- 多个 ajax 异步不按顺序排列,需要同步行为
- 按数字顺序排列列表
- JavaScript 按字母顺序排列
- jQuery Rotator是按字母顺序排列的,我怎样才能在我的主页上随机化
- 按字母顺序排列 AngularJS 中对象保留键/值关联的选项
- 需要一个优化的解决方案来获取按字母顺序排列的记录集 javascript
- Jquery - 按顺序排列的 ajax 循环
- Javascript 如何创建按顺序排列数字的对象
- Mongodb文档没有按正确的顺序排列