[英]How to Update an Object inside an Array inside a MongoDB Collection using Mongoose
[英]MONGODB update value inside object, inside array, inside collection
我在 Mongodb 上有这个集合:
[
{
_id: new ObjectId("630954ebdfec2657ac6086e5"),
productos: [ [Object], [Object] ],
timestamp: 2022-08-26T23:19:07.321Z,
__v: 0
}
]
我想知道如何对“productos”数组中的“cantidad”值求和。
“productos”看起来像这样:
[
{
nombre: 'sandia',
foto: 'https://cdn3.iconfinder.com/data/icons/fruits-52/150/icon_fruit_melancia-128.png',
precio: 12,
cantidad: 1,
_id: new ObjectId("62fc0daf755a14dbac449005")
},
{
nombre: 'frutillas',
foto: 'https://cdn3.iconfinder.com/data/icons/fruits-52/150/icon_fruit_morango-128.png',
precio: 15,
cantidad: 1,
_id: new ObjectId("62fc14badcaffc2a39ab7b46")
}
]
任何帮助,将不胜感激。
快乐编码!
您没有指定您希望 output 看起来像什么,所以这只是"$project"
一个带有总和的新字段。
db.collection.aggregate([
{
"$project": {
"cantidadSum": {
"$sum": "$productos.cantidad"
}
}
}
])
示例 output:
[
{
"_id": ObjectId("630954ebdfec2657ac6086e5"),
"cantidadSum": 2
}
]
在mongoplayground.net上试试。
哦对不起! 我想要的 output 将是 object 与“cantidad”(西班牙语数量)总和 + 1
对不起我的英语!
像这样修改数量的东西:
{nombre: 'sandia',
foto: 'https://cdn3.iconfinder.com/data/icons/fruits-52/150/icon_fruit_melancia-128.png',
precio: 12,
cantidad: 2,
_id: new ObjectId("62fc0daf755a14dbac449005")}
问候!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.