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

MongoDB में नेस्टेड ऐरे के अंदर वैल्यू इन्क्रीमेंट कैसे करें

MongoDB में नेस्टेड ऐरे के अंदर किसी फील्ड की वैल्यू इन्क्रीमेंट करने के लिए पोजिशनल ऑपरेटर $ का उपयोग करें।

उदाहरण से समझें

एक कलेक्शन बनाकर नेस्टेड ऐरे वाला डॉक्यूमेंट इन्सर्ट करते हैं:

> db.incrementValueInNestedArrayDemo.insertOne({
  "UniqueId": 1,
  "StudentDetails": [
    {"StudentId": 101, "StudentMarks": 97},
    {"StudentId": 103, "StudentMarks": 99},
    {"StudentId": 105, "StudentMarks": 69},
    {"StudentId": 107, "StudentMarks": 59}
  ]
});

सभी डॉक्यूमेंट देखने के लिए:

> db.incrementValueInNestedArrayDemo.find().pretty();

आउटपुट:

{ "_id": ..., "UniqueId": 1, "StudentDetails": [ {"StudentId": 101, "StudentMarks": 97}, {"StudentId": 103, "StudentMarks": 99}, {"StudentId": 105, "StudentMarks": 92}, {"StudentId": 107, "StudentMarks": 59} ] }

अब StudentId: 107 वाले एलिमेंट का StudentMarks 1 से इन्क्रीमेंट करने के लिए:

> db.incrementValueInNestedArrayDemo.update(
  {UniqueId: 1, "StudentDetails.StudentId": 107},
  {$inc: {"StudentDetails.$.StudentMarks": 1}}
);
WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 })

फिर से चेक करें:

> db.incrementValueInNestedArrayDemo.find().pretty();

आउटपुट:

{ "_id": ..., "UniqueId": 1, "StudentDetails": [ {"StudentId": 101, "StudentMarks": 97}, {"StudentId": 103, "StudentMarks": 99}, {"StudentId": 105, "StudentMarks": 92}, {"StudentId": 107, "StudentMarks": 60} ] }

StudentMarks 59 से 60 हो गया। पोजिशनल $ ऑपरेटर क्वेरी से मैच हुए ऐरे एलिमेंट को रेफर करता है।

  1. - MongoDB में सरणी ऑब्जेक्ट के साथ सरणी तत्व के मान को बढ़ाएं

    सरणी ऑब्जेक्ट के मान को बढ़ाने के लिए, $inc का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: >db.demo506.insertOne({details:[{id:1,Quantity:4},{id:2,Quantity:3},{id:3,Quantity:2},{id:4,Quantity:7}]}); { acknowledged : true, insertedId : ObjectId(5e882ed6987b6e0e9d18f576) } find() मेथड की मद

  1. - MongoDB में नेस्टेड सरणी को कैसे सॉर्ट करें?

    MongoDB में नेस्टेड सरणी को सॉर्ट करने के लिए, $sort का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo505.insertOne( { details: [ { Name:Chris, Score:58 }, { Name:Bob, Score:45 }, { Name:John, Score:68 }, { Name:David, Score:46 } ] }); { ackn

  1. - MongoDB कलेक्शन को ऐरे वैल्यू द्वारा सॉर्ट करें

    MongoDB कलेक्शन को ऐरे वैल्यू द्वारा सॉर्ट करने के लिए, $sort के साथ aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo577.insertOne({ student: { details: [ { Name:Chris, Score:45 }, { Name:Bob, Score:33 }, { Name:Davi