MongoDB एग्रीगेशन में $min और $max के साथ ऐरे के मिन/मैक्स मान
न्यूनतम और अधिकतम मान प्राप्त करने के लिए $min और $max का उपयोग करें।
कलेक्शन बनाना
> db.demo286.insertOne({"details":[{Value1:70,Value2:50},{Value1:30,Value2:36}]});
{ "acknowledged": true, "insertedId": ObjectId("5e4ac743f49383b52759cbbc") }
डॉक्यूमेंट देखना
> db.demo286.find().pretty();
मिन/मैक्स क्वेरी
> db.demo286.aggregate([ { "$project": { "name": 1, "MinValue1": { "$min": "$details.Value1" }, "MaxValue2": { "$max": "$details.Value2" } }} ])परिणाम
व्याख्या
- $project: आउटपुट फील्ड्स परिभाषित करता है
- $min: "$details.Value1": details ऐरे के सभी तत्वों के Value1 में न्यूनतम मान (30)
- $max: "$details.Value2": details ऐरे के सभी तत्वों के Value2 में अधिकतम मान (50)
- ऐरे तत्वों के संगत फील्ड्स से स्वचालित रूप से मान निकालता है
नोट
यदि details ऐरे खाली है या फील्ड अनुपस्थित है, तो $min/$max null लौटाता है। MongoDB 5.0+ में $minN/$maxN भी उपलब्ध हैं जो N न्यूनतम/अधिकतम मान लौटाते हैं।
वैकल्पिक: $unwind के साथ
यह दृष्टिकोण अधिक लचीला है जब आगे प्रोसेसिंग की आवश्यकता हो।