في MongoDB ، كيف يمكنك استخدام مجموعة $ لتحديث قيمة متداخلة/وثيقة مضمنة؟
-
26-09-2019 - |
سؤال
في Mongodb كيف تستخدم $set
لتحديث قيمة متداخلة؟
على سبيل المثال ، فكر في مجموعة اشخاص مع الوثيقة التالية:
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
كيف أقوم بتحديث ملف street
الحقل مضمن في address
وثيقة من "123"
ل "Main Street"
?
المحلول
باستخدام تدوين نقاط:
db.people.update({ }, { $set: { "address.street": "Main Street" } })
نصائح أخرى
بالإضافة إلى إجابة نيلز ، تحقق أيضًا من "نوع" القيمة المتداخلة. في حالتي ، كانت "سلسلة" تشكلت من JSON. على الرغم من أن هذا قد يكون غير مرجح ، ولكن تأكد من أن القيمة لها النوع الصحيح.
لا تنتمي إلى StackOverflow