หากต้องการรับค่าต่ำสุดและสูงสุด ให้ใช้ $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 }