MongoDB 中陣列的最小值和最大值?
要獲取最小值和最大值,請使用 $min 和 $max。我們使用文件建立一個集合 -
> db.demo286.insertOne({"details":[{Value1:70,Value2:50},{Value1:30,Value2:36}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e4ac743f49383b52759cbbc") }
在收藏集中顯示所有文件,藉助 find() 方法 -
> db.demo286.find().pretty();
將生成以下輸出 -
{ "_id" : ObjectId("5e4ac743f49383b52759cbbc"), "details" : [ { "Value1" : 70, "Value2" : 50 }, { "Value1" : 30, "Value2" : 36 } ] }
以下是獲取陣列的最小值和最大值查詢 -
> db.demo286.aggregate([ { "$project": { "name": 1, "MinValue1": { "$min": "$details.Value1" }, "MaxValue2": { "$max": "$details.Value2" } }} ])
將生成以下輸出 -
{ "_id" : ObjectId("5e4ac743f49383b52759cbbc"), "MinValue1" : 30, "MaxValue2" : 50 }
廣告