我对以下查询运行解释:
db.explain().find({ site_id:1, dimensions:[], create_date: { $gte: new Date(1452603948196) } )
结果在维度字段上包含一个“过滤器”对象,而它应该使用索引过滤该字段,这是什么意思?这不是一个多余的阶段吗?
{ "winningPlan" : {
"stage" : "FETCH",
"filter" : {
"dimensions" : {
"$eq" : [ ]
}
},
"inputStage" : {
"stage" : "IXSCAN",
"keyPattern" : {
"site_id" : 1,
"dimensions" : 1,
"create_date" : 1
}, }
据我了解,这意味着 mongo 在扫描索引并将文档提取到内存后再次过滤维度字段,是否正确?
谢谢,