如何在MongoDB的子文档中添加额外的字段?
您可以使用update()。首先让我们创建一个包含文档的集合-
> db.addExtraFieldDemo.insertOne(
{
"_id": 1,
"UserName": "Larry" ,
"UserOtherDetails":[
{
"UserCountryName": "US",
"UserAge":23
},
{
"UserCountryName": "UK",
"UserAge":24
}
]
}
);
{ "acknowledged" : true, "insertedId" : 1 }以下是在find()方法的帮助下显示集合中所有文档的查询-
> db.addExtraFieldDemo.find().pretty();
这将产生以下输出-
{
"_id" : 1,
"UserName" : "Larry",
"UserOtherDetails" : [
{
"UserCountryName" : "US",
"UserAge" : 23
},
{
"UserCountryName" : "UK",
"UserAge" : 24
}
]
}以下是在MongoDB的子文档中添加额外字段的查询-
> db.addExtraFieldDemo.update({ "_id":1},{ "$set":{ "UserOtherDetails.0.isMarried_" : true }});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })让我们再次检查文件-
> db.addExtraFieldDemo.find().pretty();
这将产生以下输出-
{
"_id" : 1,
"UserName" : "Larry",
"UserOtherDetails" : [
{
"UserCountryName" : "US",
"UserAge" : 23,
"isMarried_" : true
},
{
"UserCountryName" : "UK",
"UserAge" : 24
}
]
}