2013-06-27 28 views
1

集合是象下面這樣:如何選擇每組中的最大項目?

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 

回答

0

像這樣的東西應該做的伎倆

db.scores.aggregate( { $group: { 
    _id: { name: "$name", subject: "$subject" }, 
    'maxscore': { $max : "$score" } 
}}) 
+0

謝謝,我做了一點修改,它的工作原理! – geniuslinchao