MongoDB多键在_id +某个值上

时间:2012-06-20 14:11:56

标签: mongodb

在MongoDB中,我有一个查询,看看这个用户已经投票的评论:

db.comments.find({
    _id: { $in: [...some ids...] },
    votes.uid: "4fe1d64d85d4f4c00d000002"
});

正如文档所说,你应该

  

每个查询一个索引

那么最好在_id + votes.uid上创建一个多键,还是只能在votes.uid上编制索引,因为Mongo会以任何方式自动处理_id?

1 个答案:

答案 0 :(得分:0)

_id 会自动显示索引。

根据您的查询(您在$ in数组中有多少ID)和数据,(您在一个对象上有多少票),您可以创建关于votes.uid的索引。

注意在查询执行期间使用哪个索引,并记住您可以通过添加.hints(field:1)hints('indexname')

强制Mongo使用您想要的索引