1

here the following my document

{
  langid: "java101",
 language : { 
         frontEnd: [{
                     stuid  : "st1",
                     stuName : "Siva",
                     course : "java"
                    },
                    {
                     stuid  : "st1",
                     stuName : "Siva",
                     course : "DotNet"
                    },
                    {
                     stuid  : "st2",
                     stuName : "ramu",
                     course : "java"
                    }
                   ],
        backend : [{
                     stuid  : "st1",
                     stuName : "Siva",
                     course : "mongo"
                    },
                    {
                     stuid  : "st1",
                     stuName : "Siva",
                     course : "oracle"
                    },
                    {
                     stuid  : "st2",
                     stuName : "ramu",
                     course : "mongo"
                    }]
          }
}

I need chage stuName Siva to SivaRamaKrishna

CodeChanger
  • 7,953
  • 5
  • 49
  • 80
Anji
  • 55
  • 7

1 Answers1

0

You could try something like this

db.collection.update({
  "$and": [
    {
      "language.frontEnd.stuName": "Siva"
    },
    {
      "language.backend.stuName": "Siva"
    }
  ]
},
{
  "$set": {
    "language.frontEnd.$.stuName": "SivaRamaKrishna",
    "language.backend.$.stuName": "SivaRamaKrishna"
  }
})

It working only one fields

See working

Anji
  • 55
  • 7
Shubham Dixit
  • 9,242
  • 4
  • 27
  • 46