Обновите значение n-ого массива во встроенных документах в MongoDB - PullRequest
1 голос
/ 06 мая 2019

Я хочу обновить только n-ую позицию в этом массиве, вместо обновления всех значений в массиве. db.patient.insertMany([ {firstName: "Thanga",lastName:"Durai", age:27,history:{disease:["Cold","ulergy"]}}]);

Здесь, подскажите, пожалуйста, как обновить значение «Холодная» до «Лихорадка», остатки те же.

Я уже знаю другой метод для архивирования этого, но используя это, я должен обновить все значения в массиве: db.patient.updateOne({firstName:"Thanga","history.disease":"Cold"}, {$set:{lastName:"Yuvi","age":28,"history.disease":["Fever","Ulergy"]}} )

Может кто-нибудь подсказать, пожалуйста, как обновить только Cold в Fever?

1 Ответ

1 голос
/ 06 мая 2019

попробуйте

db.patient.update(
  {
    "firstName":"Thanga",
    "history.disease":"Cold"
  }, 
  {
    $set:{
      "lastName":"Yuvi",
      "age":28,
      "history.disease.0":"Fever"
   }
  })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...