0
コレクション構造は、2つのドキュメントフィールドを比較し、1つのクエリでmaxを返します。
{
name: "alex",
age: 21
},
{
name: "felix",
age: 11
}
1つのクエリで最大2つのドキュメントの年齢を取得したいと考えています。つまり、私はname: alex
とname: felix
の年齢を比較し、21
を返したいと思っています。
私がこれまで行ってきたことは、2つの別個のクエリを次のように書いています。
var maxAge;
db.collection.find({name: "alex"}, {age: 1, _id: 0}).toArray(function(err, result){
maxAge = result[0].age;
})
db.collection.find({name: "felix"}, {age: 1, _id: 0}).toArray(function(err, result){
if(result[0].age > maxAge){
maxAge = result[0].age;
}
})
return maxAge;
私はそれを行うには効率的な方法を探しています。もっと論理的にはどうすればいいですか?