Want to update array of object field from existing object field value in mongo.. following is my collection..
{
"_id": ObjectId(),
"sku": "V4696-DR-V33",
"options": [
{
"sku": "8903689984338",
"retailer": [
{
"buffer_quantity": 1,
"id" : 101011,
"inventory": 8
},
{
"buffer_quantity": 2,
"id" : 101012,
"inventory": 10
}
]
},
{
"sku": "1742564789",
"retailer": [
{
"buffer_quantity": 1,
"id" : 101011,
"inventory": 4
},
{
"buffer_quantity": 2,
"id" : 101012,
"inventory": 6
}
]
},
]
}
from above collection want to update inventory of above collection where options.retailer.id = 101011
then update options.retailer.inventory by difference between options.retailer.inventory & options.retailer.buffer_quantity then output like show as below
{
"_id": ObjectId(),
"sku": "V4696-DR-V33",
"options": [
{
"sku": "8903689984338",
"retailer": [
{
"buffer_quantity": 1,
"id" : 101011,
"inventory": 7
},
{
"buffer_quantity": 2,
"id" : 101012,
"inventory": 10
}
]
},
{
"sku": "1742564789",
"retailer": [
{
"buffer_quantity": 1,
"id" : 101011,
"inventory": 3
},
{
"buffer_quantity": 2,
"id" : 101012,
"inventory": 6
}
]
},
]
}