查询一个字段并使用另一个字段进行排序需要复合索引吗?

时间:2016-10-12 17:51:26

标签: mongodb indexing

在MongoDB中,我们说我有以下查询:

db.things.find({ name: 'some string' }).sort({ age: -1 })

我知道拥有age的索引会有助于提高性能,但是我是单独创建nameage的索引,还是作为复合?

db.things.createIndex({ name: 1, age: -1 })

1 个答案:

答案 0 :(得分:1)

创建复合索引。 Mongo DB的文档在此处详细介绍:

https://docs.mongodb.com/manual/tutorial/sort-results-with-indexes/

从该页面开始:

  

以下操作可以使用索引来获取排序顺序:

     

...

     

db.data.find({a:5}).sort({b:1,c:1})---------------------- ------------- {a:1,b:1,c:1}