MongoDB में सहेजे गए इस दस्तावेज़ को देखते हुए
{
_id : ...,
some_key: {
param1 : "val1",
param2 : "val2",
param3 : "val3"
}
}
पर नई जानकारी के साथ एक वस्तु param2
और param3
बाहर की दुनिया से बचाया जा करने की जरूरत है
var new_info = {
param2 : "val2_new",
param3 : "val3_new"
};
मैं ऑब्जेक्ट की मौजूदा स्थिति पर नए फ़ील्ड्स को मर्ज / ओवरले करना चाहता हूं ताकि param1 हटाए न जाएं
यह कर रहा हूं
db.collection.update( { _id:...} , { $set: { some_key : new_info } }
MongoDB को आगे ले जाएगा जैसा कि पूछा गया था, वैसा ही कर रहा है, और some_key को उस मान पर सेट करता है। पुराने की जगह।
{
_id : ...,
some_key: {
param2 : "val2_new",
param3 : "val3_new"
}
}
केवल नए फ़ील्ड्स (बिना उन्हें स्पष्ट रूप से बताए) के लिए MongoDB अपडेट करने का तरीका क्या है? इसे पाने के लिए:
{
_id : ...,
some_key: {
param1 : "val1",
param2 : "val2_new",
param3 : "val3_new"
}
}
मैं जावा क्लाइंट का उपयोग कर रहा हूं, लेकिन किसी भी उदाहरण की सराहना की जाएगी