我的 mongoDB 集合中有以下文档。
{
"_id" : ObjectId("51d90c3746503d6ab5933b88"),
"scorearray" : [
{
"score" : 0.0
},
{
"score" : 7.0
}
],
"player" : "Arod"
}
/* 1 */
{
"_id" : ObjectId("51d90c0d46503d6ab5933b86"),
"scorearray" : [
{
"score" : 2.0
},
{
"score" : 1.0
},
{
"score" : 5.0
}],
"player" : "Martini"
}
我试图获得每个玩家的最高分数,我有一个如下查询,但它只给了我一个玩家,即 Arod 7.0,我的查询结果中需要 Arod 7.0 和 Martini 5.0。
有人可以指导我如何修改以下查询。任何指导将不胜感激。
db.playerscorecollection.aggregate([
{$project:{_id:0,player:1, "scorearray.score":1}},
{$unwind:"$scorearray"},
{$sort:{"scorearray.score":-1}},
{$limit:1}
]);