2

集合如下:

Name      Subject    Score
Li        Math       89
Wang      Math       97
Su        Math       85
Li        History    80
Wang      History    73
Su        History    75
Li        Science    90
Wang      Science    83
Su        Science    65

我想为每个人获得最高的主题,结果如下:

Li        Science    90
Wang      Math       97
Su        Math       85
4

1 回答 1

1

像这样的东西应该可以解决问题

db.scores.aggregate(  { $group: {
     _id: { name: "$name", subject: "$subject" },
     'maxscore': { $max : "$score" }
}})
于 2013-06-27T13:17:50.523 回答