如何在 MongoDB 中将子文档添加到子文档数组?
mongodbdatabasebig data analytics
使用 $push 运算符添加子文档。首先,我们创建一个包含文档的集合 −
> db.subDocumentToSubDocumentDemo.insertOne(
{
"_id" :101,
"StudentName" : "Larry",
"StudentAge" : 21,
"StudentDetails" : [
{
"StudentCountryName" : "US",
"StudentFavouriteSubjectList" : [ ]
}
]
}
);
{ "acknowledged" : true, "insertedId" : 101 }
以下是使用 find() 方法显示集合中的所有文档的查询 −
> db.subDocumentToSubDocumentDemo.find().pretty();
这将产生以下输出 −
{
"_id" : 101,
"StudentName" : "Larry",
"StudentAge" : 21,
"StudentDetails" : [
{
"StudentCountryName" : "US",
"StudentFavouriteSubjectList" : [ ]
}
]
}
以下是在 MongoDB 中向子文档数组添加子文档的查询 −
> db.subDocumentToSubDocumentDemo.update(
{ "_id": 101 },
{
"$push": {
"StudentDetails": {
"StudentCountryName" : "UK",
"StudentFavouriteSubjectList" : ["MongoDB","Java" ]
}
}
}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
让我们再检查一遍所有文件 −
> db.subDocumentToSubDocumentDemo.find().pretty();
这将产生以下输出 −
{
"_id" : 101,
"StudentName" : "Larry",
"StudentAge" : 21,
"StudentDetails" : [
{
"StudentCountryName" : "US",
"StudentFavouriteSubjectList" : [ ]
},
{
"StudentCountryName" : "UK",
"StudentFavouriteSubjectList" : [
"MongoDB",
"Java"
]
}
]
}

