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

MongoDB में डॉट नोटेशन का उपयोग करके गहरे नेस्टेड ऑब्जेक्ट्स क्वेरी करना

MongoDB में गहरी नेस्टिंग क्वेरी: डॉट नोटेशन

कई स्तरों तक नेस्टेड दस्तावेज़ों और सरणियों के अंदर फ़ील्ड्स को क्वेरी करने के लिए, डॉट नोटेशन का उपयोग करके पूरा पथ निर्दिष्ट करें: level1.level2.arrayField.embeddedField।

नमूना डेटा: 3-स्तरीय नेस्टिंग

> db.demo350.insertOne({
    id: 101, Name: "Chris",
    details: [{_id: 1, ClientNumber: "10001", ClientDetails: [{Name: "David", Age: 29}, {Name: "Bob", Age: 31}]}]
});
{ "acknowledged": true, "insertedId": ObjectId("5e553a68f8647eb59e5620b8") }

> db.demo350.insertOne({
    id: 102, Name: "David",
    details: [{_id: 2, ClientNumber: "10002", ClientDetails: [{Name: "Carol", Age: 42}, {Name: "John", Age: 37}]}]
});
{ "acknowledged": true, "insertedId": ObjectId("5e553a8ff8647eb59e5620b9") }

क्वेरी: ClientDetails.Name = "John" वाले दस्तावेज़ ढूंढें

> db.demo350.find({"details.ClientDetails.Name": "John"});

परिणाम

{ "_id": ObjectId("5e553a8ff8647eb59e5620b9"), "id": 102, "Name": "David", "details": [{"_id": 2, "ClientNumber": "10002", "ClientDetails": [{"Name": "Carol", "Age": 42}, {"Name": "John", "Age": 37}]}] }

डॉट नोटेशन details.ClientDetails.Name स्वचालित रूप से दोनों सरणी स्तरों (details और ClientDetails) को पार करता है और जांचता है कि क्या कोई भी नेस्टेड दस्तावेज़ में Name "John" है। पूरा दस्तावेज़ लौटाया जाता है।

  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