我在我的收藏中有以下数据,我正在尝试更新数组。
{
"DESCRIPTION": "Sample",
"USERS": [
{
"USER_ID": "001",
"USER_TYPE": "A",
"USER_ACCOUNT": "ACCOUNTS"
},
{
"USER_ID": "002",
"USER_TYPE": "A",
"USER_ACCOUNT": "ACCOUNTS"
}
]
}
第一案例
如果我想更新USER_ID" 001"的USER_TYPE,如何使用mongo查询。在查询下面我试过它总是在USERS数组中推送一个新条目。
db.test.update({"USERS": {"$elemMatch":{"USER_ID":"001"}}},{"$addToSet":{"USERS":{"USER_ID":"001","USER_TYPE":"B","USER_ACCOUNT":"ACCOUNTS"}}},{"upsert":true})
第二种情况
如果在UPDATE查询中传递了新的USER_ID,则必须将新条目推送到数组。
有人可以帮助我解决我的错误。