我想查找 quantity 的值并将其更新为 3,其中我的 id 为“5cc6d9737760963ea07de411”
我的数据:
[
{
"products" : [ {
"id" : "5cc6d9737760963ea07de411",
"quantity" : 1,
"totalPrice" : 100,
},
{
"id" : "5cc6d9737760963ea07de412",
"quantity" : 2,
"totalPrice" : 200,
}
],
"isCompleted" : false,
"_id" : "5cc7e4096d7c2c1f03570a2f"
},
{
"products" : [{
"id" : "5cc6d9737760963ea07de414",
"quantity" : 1,
"totalPrice" : 100,
},
{
"id" : "5cc6d9737760963ea07de4133",
"quantity" : 2,
"totalPrice" : 200,
}
],
"isCompleted" : false,
"_id" : "5cc7e4096d7c2c1f03570a2f"
}
]
我试过了:
Schema.findOneAndUpdate({_id: ""},{ "products": {"quantity": 3}})
但它不起作用。
最佳答案
你必须使用 .dot
符号和 $
位置运算符在这里
Schema.findOneAndUpdate(
{ "products.id": "5cc6d9737760963ea07de411" },
{ "products.$.quantity": 3 }
)
https://stackoverflow.com/questions/55916265/
相关文章:
linux - 从 bash 提示符和脚本向 docker exec 传递参数
mongodb - 命令以非零退出代码 : Error executing in Docker Co
c# - 如何将 MongoDB 驱动程序与 C# ASP.NET Core API 框架一起使用?
java - Spring Data Mongodb 的性能问题
node.js - MongoDB 与 Docker "failed to connect to s
node.js - 学习 NodeJS 和 MongoDB Docker 组合
mongodb - 从 mongo db $pull 中删除嵌入文档不起作用