我有一个这样的用户模型
{
_id:"something",
email:"abc@gmail.com",
contacts:[
{_id:"123",status:"PENDING"},
{_id:"456",status:"PENDING"},
{_id:"789",status:"PENDING"}
]
}
我有一个用户联系人"123"的id,我想将特定联系人的状态从"待定"更新为"成功".我该怎么做?
我有一个这样的用户模型
{
_id:"something",
email:"abc@gmail.com",
contacts:[
{_id:"123",status:"PENDING"},
{_id:"456",status:"PENDING"},
{_id:"789",status:"PENDING"}
]
}
我有一个用户联系人"123"的id,我想将特定联系人的状态从"待定"更新为"成功".我该怎么做?
最简单的方法是使用数组标识符$,如下所示:
db.collection.updateOne({
email: "abc@gmail.com",
"contacts._id": "123"
},
{
"$set": {
"contacts.$.status": "SUCCESSFUL"
}
})
数组标识符更新与查询匹配的数组的第一个元素.