在mongo db中更新数组

时间:2015-10-25 15:39:21

标签: mongodb mongoose

我在我的收藏中有以下数据,我正在尝试更新数组。

{
  "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,则必须将新条目推送到数组。

有人可以帮助我解决我的错误。

0 个答案:

没有答案