Как обновить много документов одним запросом в MongoDB - PullRequest
0 голосов
/ 17 сентября 2018

У меня много таких документов:

{_id: 1, data: {a: 989, b: 732}},
{_id: 2, data: {a: 943, b: 778}},
{_id: 3, data: {a: 932, b: 768}},

И я хочу обновить любой документ, но одним запросом. Например, я хочу установить {a: 1, b: 1} для _id: 1, затем {a: 2, b: 2} для _id: 2 и т. Д.

1 Ответ

0 голосов
/ 17 сентября 2018

Я сделал это с bulkWrite

collection(`someCollection`).bulkWrite([
  {
    updateOne: {
      filter: {_id: 1},
      update: {$set: {'data.a': 1000, 'data.b': 800}},
    }
  },
  {
    updateOne: {
      filter: {_id: 2},
      update: {$set: {'data.a': 1001, 'data.b': 801}},
    },
  },
  // ...
])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...