使用 find() / aggregate() 引用 MongoDB 个索引
Refering MongoDB indexes with find() / aggregate()
有什么方法可以强制 find() 或 aggregate() 查询到 refer/see MongoDB 中的特定现有索引。我问的是当一个集合有多个复合索引时的场景。
是的,$hint 就是为了这个。如文档中所述,您可以这样使用它:
db.users.find().hint( { age: 1 } )
你在参数中输入的是索引的定义,而不是它的名称。此查询将强制使用 age
字段上的索引。我不确定它是否也适用于 aggreate()
呼叫。
聚合不支持$hint。 MongoDB 中有一个未清项
https://jira.mongodb.org/browse/SERVER-7944
有什么方法可以强制 find() 或 aggregate() 查询到 refer/see MongoDB 中的特定现有索引。我问的是当一个集合有多个复合索引时的场景。
是的,$hint 就是为了这个。如文档中所述,您可以这样使用它:
db.users.find().hint( { age: 1 } )
你在参数中输入的是索引的定义,而不是它的名称。此查询将强制使用 age
字段上的索引。我不确定它是否也适用于 aggreate()
呼叫。
聚合不支持$hint。 MongoDB 中有一个未清项 https://jira.mongodb.org/browse/SERVER-7944