MongoDB में sort() और count() का उपयोग करके दस्तावेज़ की स्थिति ज्ञात करना
MongoDB में किसी दस्तावेज़ की सॉर्ट क्रम में सापेक्ष स्थिति (रैंक) ज्ञात करने के लिए, सॉर्ट क्रम लागू करके उन दस्तावेज़ों की गिनती करें जो लक्ष्य दस्तावेज़ से पहले आते हैं।
उदाहरण: संग्रह और दस्तावेज़ बनाना
> db.demo47.insertOne({"ClientName":"Adam"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e267240cfb11e5c34d898f0") }
> db.demo47.insertOne({"ClientName":"John"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e267243cfb11e5c34d898f1") }
> db.demo47.insertOne({"ClientName":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e267247cfb11e5c34d898f2") }
> db.demo47.insertOne({"ClientName":"Sam"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e26724ccfb11e5c34d898f3") }
सभी दस्तावेज़ देखना
> db.demo47.find();
आउटपुट:
{ "_id" : ObjectId("5e267240cfb11e5c34d898f0"), "ClientName" : "Adam" }
{ "_id" : ObjectId("5e267243cfb11e5c34d898f1"), "ClientName" : "John" }
{ "_id" : ObjectId("5e267247cfb11e5c34d898f2"), "ClientName" : "Chris" }
{ "_id" : ObjectId("5e26724ccfb11e5c34d898f3"), "ClientName" : "Sam" }
"John" से पहले के दस्तावेज़ों की गिनती (स्थिति ज्ञात करना)
> db.demo47.find({ClientName: {$lt: "John"}}).sort({ClientName: 1}).count();
आउटपुट:
2
व्याख्या:
{ClientName: {$lt: "John"}}- "John" से वर्णानुक्रम में पहले आने वाले नाम.sort({ClientName: 1})- आरोही क्रम में सॉर्ट.count()- गिनती लौटाता है (यहां 2: Adam और Chris)
नोट: यह स्थिति 0-आधारित है। यदि 1-आधारित रैंक चाहिए, तो परिणाम में 1 जोड़ें। बड़े संग्रह के लिए countDocuments() का उपयोग करें (count() डिप्रिकेटेड है)।