- Reference >
- Operators >
- Query Modifiers >
- $hint
$hint¶
- $hint¶
The $hint operator forces the query optimizer to use a specific index to fulfill the query. Specify the index either by the index name or by document.
Use $hint for testing query performance and indexing strategies. The mongo shell provides a helper method hint() for the $hint operator.
Consider the following operation:
db.users.find().hint( { age: 1 } )
This operation returns all documents in the collection named users using the index on the age field.
You can also specify a hint using either of the following forms:
db.users.find()._addSpecial( "$hint", { age : 1 } ) db.users.find( { $query: {}, $hint: { age : 1 } } )
注解
When the query specifies the $hint in the following form:
db.users.find( { $query: {}, $hint: { age : 1 } } )
Then, in order to include the $explain option, you must add the $explain option to the document, as in the following:
db.users.find( { $query: {}, $hint: { age : 1 }, $explain: 1 } )
When an index filter exists for the query shape, MongoDB ignores the $hint. The explain.filterSet field of the explain() output indicates whether MongoDB applied an index filter for the query.