[英]How to add new document in an embedded document in Mongodb
我有一個存儲員工姓名和工資詳細信息的文檔。 該文檔存儲每個月的工資詳細信息。 請注意,“Employee_Salary”字段不是數組。 這是我的文件。
{
"_id" : 5.0000000000000000,
"Employee_Name" : "John Karrl",
"Employee_Salary" : {
"April-2015" : {
"actual_salary" : 300,
"bonus" : 0,
"penalty" : 0,
"bonus_pen_detail" : "NA",
"month_paid" : "April",
"year_paid" : 2015,
"total_amount_paid" : 300
}
}
}
現在我想更新此文檔以插入或添加下個月(即 2015 年 5 月)的新工資詳細信息。 我曾嘗試使用 '$push' 命令,但它不起作用並給我以下錯誤。
'字段'Employee_Salary' 必須是一個數組,但在文檔{_id: 5.0} 中屬於對象類型。
$push
只能應用於數組元素。 由於Employee_Salary
是一個對象,因此您必須執行$set
操作,如下所示:
db.employee.update(
{_id: 5.0},
{$set: {
'Employee_Salary.May-2015': {
"actual_salary" : 300,
"bonus" : 0,
"penalty" : 0,
"bonus_pen_detail" : "NA",
"month_paid" : "May",
"year_paid" : 2015,
"total_amount_paid" : 300
}
}}
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.