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

एक एम्बेडेड दस्तावेज़ को नेस्टेड सरणी में कैसे अपडेट करें?

आपकी समस्या के विवरण के अनुसार यहाँ:

For example I want to change the quantity of the item 10 in Invoice 123456789. मैंने अभी-अभी Quantity में बदलाव किया है से 3. आप यहां अपनी इच्छानुसार कोई भी कार्य कर सकते हैं। आपको बस इस बात पर ध्यान देना होगा कि मैंने arrayFilters . का उपयोग कैसे किया? यहां।

इस क्वेरी को आजमाएं:

db.collection.update(
 {"_id" : "12345678"},
 {$set:{"Invoices.$[element1].Items.$[element2].Quantity":3}},
 {multi:true, arrayFilters:[ {"element1._id": "123456789"},{ 
  "element2.Item": { $eq: 10 }} ]}
)

उपरोक्त क्वेरी को मोंगो शेल (मोंगो 3.6.3) से सफलतापूर्वक निष्पादित किया गया। और मुझे यह परिणाम दिखाई दे रहा है:

/* 1 */
{
"_id" : "12345678",
"Invoices" : [ 
    {
        "_id" : "123456789",
        "Currency" : "EUR",
        "DueTotalAmountInvoice" : 768.37,
        "InvoiceDate" : "2016-01-01 00:00:00.000",
        "Items" : [ 
            {
                "Item" : 10,
                "ProductCode" : "ABC567",
                "Quantity" : 3.0
            }, 
            {
                "Item" : 20,
                "ProductCode" : "CDE987",
                "Quantity" : 1
            }
        ]
    }, 
    {
        "_id" : "87654321",
        "Currency" : "EUR",
        "DueTotalAmountInvoice" : 768.37,
        "InvoiceDate" : "2016-01-01 00:00:00.000",
        "Items" : [ 
            {
                "Item" : 30,
                "ProductCode" : "PLO987",
                "Quantity" : 1,
                "Units" : "KM3"
            }, 
            {
                "Item" : 40,
                "ProductCode" : "PLS567",
                "Quantity" : 1,
                "DueTotalAmountInvoice" : 768.37
            }
        ]
    }
 ]
}

क्या आप यही चाहते थे?




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडब के एकत्रीकरण में विशिष्ट फ़ील्ड वाले दस्तावेज़ों को कैसे समूहित करें

  2. मोंगो में सरणी आकार के साथ फ़ील्ड सम्मिलित करें

  3. कैसे देखें कि कौन से प्रश्न MongoDB में किसी अनुक्रमणिका का उपयोग कर रहे हैं?

  4. Node.js और Mongoose के लिए व्यवस्थापक पैनल

  5. मोंगोडब नदी के माध्यम से लोचदार खोज में सूचकांक बनाने में मानचित्रण प्रभावी नहीं हो रहा है