Docs 菜单

cursor.hint()

cursor.hint(index)

重要

mongosh 方法

这是一个mongosh方法。 这不是Node.js或其他特定于编程语言的驱动程序方法的文档。

在大多数情况下, mongosh方法的工作方式与传统 mongo shell方法相同。 但是,某些旧方法在mongosh中不可用。

有关旧版mongo shell 文档,请参阅相应 MongoDB Server 版本的文档:

有关 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

对查询调用此方法可覆盖 MongoDB 的默认索引选择和查询优化过程。使用 db.collection.getIndexes() 返回集合的当前索引列表。

cursor.hint() 方法具有以下参数:

Parameter
类型
说明

index

字符串或文档

执行查询时“提示”或强制 MongoDB 使用的索引。通过索引名称或索引规范文档来指定索引。

您还可以指定{ $natural : 1 }强制查询,以执行正向集合扫描,或指定{ $natural : -1 },以执行反向集合扫描。

此方法可用于以下环境中托管的部署:

注意

所有 MongoDB Atlas 集群都支持此命令。有关 Atlas 对所有命令的支持的信息,请参阅不支持的命令

以下示例使用 age 字段上的索引返回名为 users 的集合中的所有文档。

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

您还可以使用索引名称指定索引:

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

您可以指定 { $natural : 1 } 以强制查询执行正向集合扫描:

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

您还可指定 { $natural : -1 } 以强制查询执行反向集合扫描:

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