有一个示例http://docs.mongodb.org/manual/tutorial/create-indexes-to-support-queries/#indexes-covered-queries
任何索引字段都是子文档中的字段。要索引子文档中的字段,请使用点表示法。例如,考虑具有以下形式的文档的集合 users: { _id: 1, user: { login: "tester" } } 该集合具有以下索引:
{用户:1}
{ "user.login": 1 }
{ user: 1 } 索引涵盖以下查询:
db.users.find({用户:{登录:“测试员”}},{用户:1,_id:0})
但是,{ "user.login": 1 } 索引不包括以下查询:
db.users.find({“user.login”:“tester”},{“user.login”:1,_id:0})
但是,该查询确实使用 { "user.login": 1 } 索引来查找匹配的文档。
我想知道为什么 { "user.login": 1 } 索引没有涵盖查询的根本原因。
谢谢