This version of the documentation is archived and no longer supported.




mongo Shell Method

This page documents the mongo shell method, and does not refer to the MongoDB Node.js driver (or any other driver) method. For corresponding MongoDB driver API, refer to your specific MongoDB driver documentation instead.

Call this method on a query to override MongoDB’s default index selection and query optimization process. Use db.collection.getIndexes() to return the list of current indexes on a collection.

The cursor.hint() method has the following parameter:

Parameter Type Description
index string or document

The index to “hint” or force MongoDB to use when performing the query. Specify the index either by the index name or by the index specification document.

You can also specify { $natural : 1 } to force the query to perform a forwards collection scan, or { $natural : -1 } for a reverse collection scan.


When an index filter exists for the query shape, MongoDB ignores the hint().

You cannot use hint() if the query includes a $text query expression.


Specify an Index

The following example returns all documents in the collection named users using the index on the age field.

db.users.find().hint( { age: 1 } )

You can also specify the index using the index name:

db.users.find().hint( "age_1" )

Force Collection Scans

You can specify { $natural : 1 } to force the query to perform a forwards collection scan:

db.users.find().hint( { $natural : 1 } )

You can also specify { $natural : -1 } to force the query to perform a reverse collection scan:

db.users.find().hint( { $natural : -1 } )