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

MongoDB में एम्बेडेड दस्तावेज़ सरणी में $push लागू करना

MongoDB में एम्बेडेड दस्तावेज़ सरणी में $push का उपयोग

MongoDB में $push ऑपरेटर का उपयोग करके किसी मौजूदा दस्तावेज़ की एम्बेडेड सरणी में नया दस्तावेज़ जोड़ा जा सकता है।

नमूना डेटा बनाना

>db.demo288.insertOne({"Name":"Chris",details:[{"CountryName":"US",Marks:78},{"CountryName":"UK",Marks:68}]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4c0393f49383b52759cbbe") }

सभी दस्तावेज़ प्रदर्शित करना

> db.demo288.find();

आउटपुट:

{ "_id" : ObjectId("5e4c0393f49383b52759cbbe"), "Name" : "Chris", "details" : [ { "CountryName" : "US", "Marks" : 78 }, { "CountryName" : "UK", "Marks" : 68 } ] }

$push का उपयोग करके एम्बेडेड सरणी में दस्तावेज़ जोड़ना

> db.demo288.update( {Name: "Chris"}, {$push:{ "details":{"CountryName" : "AUS", "Marks" : 98} }}, {upsert:true});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

अपडेट के बाद दस्तावेज़ प्रदर्शित करना

> db.demo288.find();

आउटपुट:

{
    "_id" : ObjectId("5e4c0393f49383b52759cbbe"),
    "Name" : "Chris",
    "details" : [
        { "CountryName" : "US", "Marks" : 78 },
        { "CountryName" : "UK", "Marks" : 68 },
        { "CountryName" : "AUS", "Marks" : 98 }
    ]
}

मुख्य बिंदु

  • $push सरणी के अंत में नया तत्व जोड़ता है।
  • upsert: true विकल्प दस्तावेज़ न मिलने पर नया दस्तावेज़ बनाता है।
  • एम्बेडेड दस्तावेज़ सरणी में ऑब्जेक्ट जोड़ने के लिए सिंटैक्स: {$push: {"fieldName": {embeddedObject}}}।

यह दृष्टिकोण संबंधपरक डेटाबेस में अलग तालिका बनाने के बजाय, एक ही दस्तावेज़ में संबंधित डेटा को संग्रहीत करने के लिए आदर्श है।

  1. - MongoDB में $push के साथ सरणी अपडेट करें

    MongoDB में $push के साथ सरणी अपडेट करने के लिए, updateOne() का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo526.insertOne( { CountryName: US, TeacherName: Bob, StudentInformation: [ { Name: Chris, Subject: MySQL, ListOfMailI

  1. - MongoDB में सरणी मिलान कैसे लागू करें?

    सरणी मिलान के लिए $all का उपयोग करें। $all ऑपरेटर उन दस्तावेज़ों को चुनता है जहां किसी फ़ील्ड का मान एक सरणी है जिसमें सभी निर्दिष्ट तत्व होते हैं। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo668.createIndex({ListOfSubject:1}); { createdCollectionAutomatically : true, numIndexesBefore : 1, n

  1. - MongoDB में एम्बेडेड डॉक्यूमेंट की सरणी पर फ़िल्टर क्वेरी कैसे करें?

    इसके लिए MongoDB में aggregate() का उपयोग करें। आइए 3 स्तरों के नेस्टेड डॉक्यूमेंट्स के साथ एक कलेक्शन बनाते हैं: > db.demo736.insertOne( { _id: 101, details1: [ { details2: [ { details3: { Name: John } } ] } ] } ); { acknowledged : true, insertedId : 101 } > db.demo736.insertOne( { _id: 102,