4

サンプル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": "テスター" }, { "user.login": 1, _id: 0 } )

ただし、クエリは { "user.login": 1 } インデックスを使用して一致するドキュメントを検索します。

{ "user.login": 1 } インデックスがクエリをカバーしていない根本的な原因を知りたいです。

ありがとうございました

4

2 に答える 2