Mongodb: किसी संग्रह में अधिकतम मूल्य कैसे प्राप्त करें
MongoDB में किसी फ़ील्ड का अधिकतम मान ज्ञात करने के लिए आप निम्नलिखित विधियों का उपयोग कर सकते हैं:
विधि 1: अधिकतम मूल्य वाला दस्तावेज़ लौटाएँ
db.teams.find().sort({" field ": -1 }).limit( 1 )
कोड का यह टुकड़ा एक विशिष्ट फ़ील्ड के आधार पर संग्रह में सभी दस्तावेज़ों को अवरोही क्रम में क्रमबद्ध करता है, फिर केवल पहला दस्तावेज़ लौटाता है।
विधि 2: केवल अधिकतम मान लौटाएँ
db.teams.find().sort({" field ": -1 }).limit( 1 ).toArray().map(function(u){ return u.field})
निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित दस्तावेजों के साथ संग्रह टीम के साथ प्रत्येक विधि का उपयोग कैसे करें:
db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 31 }) db.teams.insertOne({team: " Spurs ", position: " Guard ", points: 22 }) db.teams.insertOne({team: " Rockets ", position: " Center ", points: 19 }) db.teams.insertOne({team: " Warriors ", position: " Forward ", points: 26 }) db.teams.insertOne({team: " Cavs ", position: " Guard ", points: 33 })
उदाहरण 1: अधिकतम मान वाला दस्तावेज़ लौटाएँ
हम उस दस्तावेज़ को वापस करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं जिसमें “अंक” फ़ील्ड में अधिकतम मान शामिल है:
db.teams.find().sort({" points ": -1 }).limit( 1 )
यह क्वेरी निम्नलिखित दस्तावेज़ लौटाती है:
{ _id: ObjectId("618285361a42e92ac9ccd2c6"), team: 'Cavs', position: 'Guard', points: 33 }
यह दस्तावेज़ वापस कर दिया गया है क्योंकि इसमें सभी दस्तावेज़ों के बीच “अंक” फ़ील्ड में उच्चतम मान (33) है।
उदाहरण 2: केवल अधिकतम मान लौटाएँ
हम सभी दस्तावेज़ों पर “अंक” फ़ील्ड में केवल अधिकतम मान वापस करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:
db.teams.find().sort({" points ": -1 }).limit( 1 ).toArray().map(function(u){ return u.points})
यह क्वेरी निम्नलिखित परिणाम लौटाती है:
[33]
ध्यान दें कि अधिकतम मान वाले संपूर्ण दस्तावेज़ के बजाय केवल अधिकतम मान (33) ही लौटाया जाता है।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि MongoDB में अन्य सामान्य ऑपरेशन कैसे करें:
MongoDB: कैसे समूहबद्ध करें और गिनें
MongoDB: एकाधिक फ़ील्ड के आधार पर समूह कैसे बनाएं
MongoDB: कैसे जांचें कि फ़ील्ड में कोई स्ट्रिंग है या नहीं