Mongo数据库聚合查询

时间:2020-07-02 07:30:59

标签: mongodb

这是我的收藏集

Tournament 1 {
id:
Name:
Active: No
}
Tournament 2 {
Id:
Name: No
Active: }
...
Tournament 6{
id:
Name:
Active: Yes
PlayerDetails: {type: Array, default: []}
}

上面的集合现在将第6场比赛设为Active =“ Yes”,然后PlayerDetails Array将有120位球员,如下所示:-

[
Player_Name:
Player_Team:
....Another couple of fields.
}

Player_Team字段可以是十个选项之一。我正在尝试运行汇总查询,以仅提取具有特定球队名称的那些球员。我能够$ match和$ project数组PlayerDetails。但是我不知道如何访问Player_Team字段并搜索特定的球队名称。可以帮忙吗?

到目前为止已尝试查询:

tournamentRegister.aggregate([
        {$match: {Tournament_Active: "Yes"}},
        {$project: {Playerdetails: "$PlayerDetails", _id: 0}},
        //"$unwind": "$Playerdetails",
        {$project:{playerdetails:{$filter:{input:"$Playerdetails", as:"playerdetails", cond:{$eq:{"TeamName": "Busters"}}}}}}
        //$filter: {input:"$Playerdetails", as: "Playerdetails", cond: {$eq: ["$$Playerdetails.$.TeamName", "Busters"]}}}
      ])

0 个答案:

没有答案