MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

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

आप "ऑब्जेक्ट्स की सरणी" पैटर्न का उपयोग कर रहे हैं। आप स्थितीय ऑपरेटर का उपयोग कर सकते हैं, यह कुछ इस तरह दिखना चाहिए:

coll.update( {'_id':'2', 'users._id':'2'}, {$set:{'users.$':{ "_id":2,"name":"name6",... }}}, false, true)

मेरे अनुभव में, "ऑब्जेक्ट्स की सरणी" पैटर्न इष्टतम नहीं है यदि ऑब्जेक्ट्स में प्राकृतिक आईडी है। आपके मामले में, इसे निम्न के रूप में मॉडल किया जा सकता है:

{
  "_id" : "2",
  "users" : 
    { "1" : { "name" : "name1", "xyz..." : "xyz1..." }, 
      "2" : { "name" : "name2", "xyz..." : "xyz2..." }
    }
  "name" : "main name"
}

इस मामले में आप अपने इच्छित आइटम को आसानी से अपडेट करने के लिए डॉट नोटेशन का उपयोग कर सकते हैं।

var newValue = {  "name" : "name6", "xyz..." : "xyz5...", "morefields..." : "fields..." };
coll.update({_id: 2}, { $set: { "users.2" : newValue } });



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. $ पहले मोंगोडब में

  2. डेटाटाइम के क्षेत्र द्वारा नवीनतम MongoDB रिकॉर्ड प्राप्त करें

  3. MongoError:कनेक्ट ECONNREFUSED 127.0.0.1:27017

  4. उच्च उपलब्धता के लिए ओपन edX MongoDB डेटाबेस कैसे परिनियोजित करें

  5. स्प्रिंग डेटा - मोंगोडब - नेस्टेड वस्तुओं के लिए विधि द्वारा खोजें