2016-08-31 69 views
0

我试图在我们的mongo集合上创建适当的索引,但我不清楚索引,查询和排序如何相互作用。查询和排序,我的mongo索引应该是什么样子

如果我有以下几点:

db.stuff.find({"userId":"10"}).sort({"created":1}); 

我是否应该在用户id一个复合索引,创建。或者,我应该在userId上有两个单独的索引,另一个是在创建?

回答

2

MongoDB cannot use index intersection支持查询条件和排序需要单独索引的查询。

所以,你会想使用compound index,与userId第一和created秒,这样所有的文档导致索引中的一个连续范围:

db.stuff.createIndex({userId: 1, created: 1})