Sử dụng toán tử $push để thêm sub-document. Tạo collection với document:
> db.subDocumentToSubDocumentDemo.insertOne(
{
"_id" : 101,
"StudentName" : "Larry",
"StudentAge" : 21,
"StudentDetails" : [
{
"StudentCountryName" : "US",
"StudentFavouriteSubjectList" : []
}
]
}
); { "acknowledged" : true, "insertedId" : 101 }
Hiển thị document:
> db.subDocumentToSubDocumentDemo.find().pretty();
Kết quả:
{ "_id" : 101, "StudentName" : "Larry", "StudentAge" : 21, "StudentDetails" : [ { "StudentCountryName" : "US", "StudentFavouriteSubjectList" : [] } ] }
Truy vấn thêm sub-document mới vào mảng StudentDetails:
> db.subDocumentToSubDocumentDemo.update(
{ "_id": 101 },
{
"$push": {
"StudentDetails": {
"StudentCountryName" : "UK",
"StudentFavouriteSubjectList" : ["MongoDB", "Java"]
}
}
}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
Kiểm tra lại document:
> db.subDocumentToSubDocumentDemo.find().pretty();
Kết quả (mảng StudentDetails giờ có 2 sub-document):
{ "_id" : 101, "StudentName" : "Larry", "StudentAge" : 21, "StudentDetails" : [ { "StudentCountryName" : "US", "StudentFavouriteSubjectList" : [] }, { "StudentCountryName" : "UK", "StudentFavouriteSubjectList" : [ "MongoDB", "Java" ] } ] }