【发布时间】:2011-05-26 02:27:50
【问题描述】:
我知道某些推荐需要对 hashmap / 字典进行排序,但是 MongoDB 中的实际 BSON 文档是否重要,索引是否仍然有效?
例如
db.people.ensureIndex({LName:1, FName:1});
两者都适用:
{LName:"abc", FName:"def"},
{FName:"ghi", LName:"jkl"}
?
谢谢
【问题讨论】:
我知道某些推荐需要对 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")。
【讨论】: