label : {
field1 : { .....},
field2 : {.....}
}
db.collection.update({_id:"objectId"},{$set : label})
我有一个包含多个文件的单个集合,我想更新field1
而不删除field2
,这可能吗?
例如
{
"_id" : ObjectId("56fa03....."),
"categories" : {
"category_name" : {
"en" : "Category Name",
"dk" : "Category Name DK"
},
"color" : { "en" : "Color", "dk" : "Color DK" }
}
}
我希望在不删除颜色的情况下更新category_name
。如何更新记录中的单个field1?
答案 0 :(得分:0)
db.getCollection('CollectionName')
.update("_id" : "objectId",
{$set : {"label.field1" : "value of field 1"}})
基于文档(v 3.2):
update()方法修改现有的特定字段 完整地记录或替换现有文件。
要更新嵌入的文档或数组,请指定 该字段的替换值。更新中的特定字段 嵌入文档或在数组中,使用点表示法来指定 字段