MongoDB:投影/搜索数组条目的数组条目

时间:2018-10-09 22:28:12

标签: mongodb

我正尝试在Mongo中进行如下搜索:

db.getCollection('years').find({
  season: 2018,
}, {
  weeks: {
    $elemMatch: {
      number: 5,
      playerStats: {
        $elemMatch: {
            player: { $in: ['5b7f8e7ac8c0ef318f03ef1c'] }
        }
      }  
    }
  }
})

它肯定不会返回正确的结果,所以我将描述我想做的事情:
我有一个年度文档,其中一个字段称为季节,我只想要与2018年匹配的季节文档。在该文档中,有一系列星期,我只希望指定数字5的星期。到目前为止,我可以做到这一点查询没问题。每个星期的文档都有一个playerStats数组,我想按它们的ID进行过滤,这就是问题所在,当我运行此查询时,我得到一条带有ID且没有其他字段的记录。我是Mongo的新手,所以可能是我的设计错误或我的查询有任何建议吗?

编辑:请求的预期结果:

{
  season:  2018,
  weeks: [{
    number: 5,
    playerStats: [...these would be filtered by their player field]
    ]
  }]
}

0 个答案:

没有答案