Home > database >  update nested array data in mongodb and node js
update nested array data in mongodb and node js

Time:11-07

I want to update status in corder data. i try many time but i cannot update that data. if you know how update that data ??

{
  "_id": "63064232cf92b07e37090e0a",
  "sname": "Bombay collection ",
   "name": "Hussain Khan",
   "costomer": [
            {
               "cname": "Basan",
               "cphone": 9863521480,
               "_id": "632eeff2a9b88eb59d0210f0",
               "corder": [
                      {
                          "clothType": "Shirt",
                          "date": "2022-10-21",
                          "status": "false",
                          "_id": "635283363edde6a0e9e92dc0"
                      },
                 ]
            }
        ]
 }

CodePudding user response:

You can use $[<identifier>]. For example:

db.collection.update(
  {},
  {$set: {"costomer.$[elemA].corder.$[elemB].status": newStatus}},
  {arrayFilters: [
    {"elemA._id": costomerId},
    {"elemB._id": corderId}
  ]}
)

See how it works on the playground example

  • Related