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

MongoDB में अंतिम डाला गया दस्तावेज़ कैसे प्राप्त करें?

MongoDB में अंतिम डाला गया दस्तावेज़ प्राप्त करने के लिए _id फ़ील्ड पर अवरोही क्रम में सॉर्ट करें और limit(1) लागू करें। MongoDB का ObjectId टाइमस्टैम्प शामिल करता है, इसलिए यह स्वाभाविक रूप से इन्सर्शन क्रम दर्शाता है।

उदाहरण

कलेक्शन बनाएं:

> db.getLastInsertedDocument.insertOne({"Name":"John"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cefb17eef71edecf6a1f6a8") }
> db.getLastInsertedDocument.insertOne({"Name":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cefb181ef71edecf6a1f6a9") }
> db.getLastInsertedDocument.insertOne({"Name":"Robert"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cefb185ef71edecf6a1f6aa") }

सभी दस्तावेज़ देखें:

> db.getLastInsertedDocument.find();
{ "_id" : ObjectId("5cefb17eef71edecf6a1f6a8"), "Name" : "John" }
{ "_id" : ObjectId("5cefb181ef71edecf6a1f6a9"), "Name" : "Chris" }
{ "_id" : ObjectId("5cefb185ef71edecf6a1f6aa"), "Name" : "Robert" }

अंतिम दस्तावेज़ प्राप्त करें

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

आउटपुट:

{ "_id" : ObjectId("5cefb185ef71edecf6a1f6aa"), "Name" : "Robert" }

व्याख्या:

  • sort({_id: -1}) - _id के अवरोही क्रम में सॉर्ट (नवीनतम पहले)
  • limit(1) - केवल पहला परिणाम लौटाता है

विकल्प: यदि आपके पास अलग टाइमस्टैम्प फ़ील्ड है (जैसे createdAt), तो उसका उपयोग करें:

db.collection.find().sort({createdAt: -1}).limit(1)

नोट: यह तरीका ObjectId का उपयोग करने वाले कलेक्शन के लिए काम करता है। कस्टम _id वाले कलेक्शन के लिए टाइमस्टैम्प फ़ील्ड आवश्यक है।

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

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

  1. - MongoDB क्वेरी: नेस्टेड दस्तावेज अपडेट करें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo595.insertOne({ Information: [ { _id: new ObjectId(), Name:Chris }, { _id:new ObjectId(), Name:Robert } ] }); { acknowledged : true, insertedId : ObjectId(5e93369cfd2d90c177b5bce4) } find() मेथड की मदद से कलेक्शन के सभी

  1. - MongoDB क्वेरी: नेस्टेड दस्तावेज अपडेट करें

    नेस्टेड दस्तावेज को अपडेट करने के लिए, update() का उपयोग करें और उसके भीतर डॉट नोटेशन का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo607.insertOne({ id:1, Info1: { Name: Chris, Age: 21, Info2: { SubjectName: MongoDB, Ma