mongodb - MongoDB BSON 文档中的键顺序是否重要?

标签 mongodb bson

我知道某些推荐需要对 hashmap/字典进行排序,但是 MongoDB 中的实际 BSON 文档是否重要,索引是否仍然有效?

例如

db.people.ensureIndex({LName:1, FName:1});

两者都适用:

{LName:"abc", FName:"def"}, 
{FName:"ghi", LName:"jkl"} 

?

谢谢

最佳答案

文档属性的顺序不影响索引。

您可以通过运行以下查询自己查看:

db.people.find({LName: "abc"}).explain()

然后是这个查询:

db.people.find({LName: "jkl"}).explain()

您应该看到 MongoDB 在这两种情况下都会使用索引(cursor 属性应该类似于 "BtreeCursor LName_1_FName_1")。

关于mongodb - MongoDB BSON 文档中的键顺序是否重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4453424/

相关文章:

mongodb - 如何使 MongoDB Upsert 真正幂等?

ruby - 如何在 MongoDB 映射函数中对 BSON 对象进行字符串化?

mongodb - 如何在 C# 中为 mongodb 文档的条目设置不同的名称?

c# - 使用 C# 将数据插入 Mongodb

java - 在java中使用多线程更新mongodb

java - MongoDb 多重排序

node.js - Mongoose 查找回调未执行

node.js - 使用 node.js 从 MongoDB 中选择最后 N 条记录

java - bson.ObjectId 使用 gson 序列化

android - Android读写BSON文档的方法