Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB में कलेक्शन में अंतिम ऑब्जेक्ट खोजने के लिए क्वेरी

MongoDB में अंतिम डॉक्यूमेंट खोजना

कलेक्शन में अंतिम ऑब्जेक्ट खोजने के लिए, पहले sort() से मानों को सॉर्ट करें। limit() का उपयोग करके रिकॉर्ड्स की संख्या प्राप्त करें।

कलेक्शन बनाना

> db.demo141.insertOne({"Name":"Chris"});
{ "acknowledged": true, "insertedId": ObjectId("5e31c347fdf09dd6d08539ae") }
> db.demo141.insertOne({"Name":"David"});
{ "acknowledged": true, "insertedId": ObjectId("5e31c34bfdf09dd6d08539af") }
> db.demo141.insertOne({"Name":"Bob"});
{ "acknowledged": true, "insertedId": ObjectId("5e31c34ffdf09dd6d08539b0") }
> db.demo141.insertOne({"Name":"Mike"});
{ "acknowledged": true, "insertedId": ObjectId("5e31c352fdf09dd6d08539b1") }

सभी डॉक्यूमेंट्स

> db.demo141.find();
{ "_id": ObjectId("5e31c347fdf09dd6d08539ae"), "Name": "Chris" }
{ "_id": ObjectId("5e31c34bfdf09dd6d08539af"), "Name": "David" }
{ "_id": ObjectId("5e31c34ffdf09dd6d08539b0"), "Name": "Bob" }
{ "_id": ObjectId("5e31c352fdf09dd6d08539b1"), "Name": "Mike" }

अंतिम ऑब्जेक्ट क्वेरी

> db.demo141.find().sort({_id:-1}).limit(1);

परिणाम

{ "_id": ObjectId("5e31c352fdf09dd6d08539b1"), "Name": "Mike" }

व्याख्या

  • sort({_id: -1}): _id के अवरोही क्रम में सॉर्ट करता है (नवीनतम पहले)
  • _id ऑब्जेक्टआईडी: इसमें टाइमस्टैम्प होता है, इसलिए इन्सर्शन क्रम दर्शाता है
  • limit(1): केवल पहला (सबसे नवीनतम) डॉक्यूमेंट लौटाता है

वैकल्पिक दृष्टिकोण

// बनावट समय फील्ड का उपयोग करके (यदि मौजूद हो)
db.demo141.find().sort({createdAt: -1}).limit(1)

// $natural ऑर्डर (डिस्क ऑर्डर) - कम विश्वसनीय
db.demo141.find().sort({$natural: -1}).limit(1)

_id द्वारा सॉर्ट करना सबसे विश्वसनीय है क्योंकि ObjectId में टाइमस्टैम्प एम्बेडेड होता है।

  1. - MongoDB Query - Collection Rename करना

    MongoDB में collection rename करने के लिए renameCollection() का उपयोग करें। Collection बनाना > db.demo690.insertOne({_id:101,Name:Sam}); { acknowledged : true, insertedId : 101 } > db.demo690.insertOne({_id:102,Name:Mike}); { acknowledged : true, insertedId : 102 } > db.demo690.insertOne({

  1. - MongoDB में चाइल्ड कलेक्शन से ऑब्जेक्ट हटाएं

    चाइल्ड कलेक्शन में ऑब्जेक्ट को हटाने के लिए, MongoDB में $pull का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo715.insertOne({ _id:1, details: [ { id: 101, Information: [ { studentid: 102, Name:Bob }, { s

  1. - MongoDB find() क्वेरी: नेस्टेड दस्तावेज के लिए

    नेस्टेड दस्तावेज से मान प्राप्त करने के लिए, डॉट नोटेशन का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo591.insert([ { Name: John, Age: 23 }, { Name: Carol, Age: 26 }, { Name: Robert, Age: 29, details: [ { Email: Robert@gmail.com, CountryName: