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

MongoDB अपडेट ऑपरेशन का उपयोग करके फ़ील्ड को ऐरे में कैसे बदलें

$set ऑपरेटर से सिंगल वैल्यू फ़ील्ड को ऐरे में बदलें

किसी मौजूदा फ़ील्ड को (जो एक सिंगल वैल्यू रखता है) ऐरे में बदलने के लिए $set ऑपरेटर का उपयोग करके उस फ़ील्ड को नए ऐरे से ओवरराइट करें।

उदाहरण: संग्रह बनाना

> db.convertAFieldToAnArrayDemo.insertOne({"StudentSubject": "MongoDB"});
{ "acknowledged": true, "insertedId": ObjectId("5ce92d7778f00858fb12e91d") }

डॉक्यूमेंट देखना (अपडेट से पहले)

> db.convertAFieldToAnArrayDemo.find();
{ "_id": ObjectId("5ce92d7778f00858fb12e91d"), "StudentSubject": "MongoDB" }

फ़ील्ड को ऐरे में बदलने की क्वेरी

forEach लूप का उपयोग करके प्रत्येक डॉक्यूमेंट को प्रोसेस करें और StudentSubject को ऐरे में बदलें:

> db.convertAFieldToAnArrayDemo.find().forEach(function(myDocument) {
    db.convertAFieldToAnArrayDemo.update(
        { _id: myDocument._id },
        { "$set": { "StudentSubject": [myDocument.StudentSubject] } }
    );
})

परिणाम जांचना

> db.convertAFieldToAnArrayDemo.find();
{ "_id": ObjectId("5ce92d7778f00858fb12e91d"), "StudentSubject": ["MongoDB"] }

अब StudentSubject एक स्ट्रिंग के बजाय एक ऐरे है जिसमें वही मान है।

नोट: यह ऑपरेशन सभी डॉक्यूमेंट्स पर लागू होता है। बड़े संग्रहों के लिए बल्क ऑपरेशन या एग्रीगेशन पाइपलाइन ($out या $merge) का उपयोग करना अधिक कुशल हो सकता है।

  1. - MongoDB में findOneAndUpdate() का उपयोग करके एकल दस्तावेज़ अपडेट करना

    MongoDB में findOneAndUpdate(): एटॉमिक खोज और अपडेट findOneAndUpdate() एक ही एटॉमिक ऑपरेशन में एक दस्तावेज़ को ढूंढता है, अपडेट करता है, और पुराना दस्तावेज़ वापस करता है (डिफ़ॉल्ट रूप से)। यह रेस कंडीशन से बचाता है। सिंटैक्स db.collection.findOneAndUpdate(filter, update, options) नमूना डेटा >

  1. - MongoDB में सरणी में एकाधिक तत्व कैसे अपडेट करें?

    MongoDB में (संस्करण 3.6+) सरणी के सभी तत्वों को अपडेट करने के लिए, ऑल स्थितीय ऑपरेटर $[] का उपयोग करें। यह फिल्टर से मेल खाने वाले दस्तावेज़ में निर्दिष्ट सरणी के हर तत्व पर अपडेट लागू करता है। उदाहरण: सर्वर लॉग सरणी वाला दस्तावेज़ > db.demo385.insertOne({ ServerLogs: [ { status: In

  1. - MongoDB में ऐरे के अंदर एलिमेंट्स कैसे अपडेट करें?

    ऐरे के अंदर एलिमेंट्स अपडेट करने के लिए MongoDB में $set का उपयोग करें। नमूना डेटा बनाना (CollegeDetails ऐरे) db.demo494.insertOne( { CollegeDetails : [ { CollegeName : MIT, Fees : 80000 }, { CollegeName : SU, Fees : 90000 } ] } ) अपडेट से पहले दस्तावेज़ देखना db.demo494.find().prett