Обновление документов в MongoDB
В данном уроке мы рассмотрим методы, которые дают возможность обновлять документы в коллекции.
Обновление одного документа
Метод updateOne обновляет первый
документ, попадающий под фильтр, указанный
первым параметром. Вторым параметром метод
принимает объект, задающий поля для обновления.
Ключом этого объекта служит специальное
имя $set, в котором указывается
объект с полями и их новыми значениями.
Для примера давайте первому юзеру с возрастом
26 установим зарплату в 900:
await coll.updateOne({age: 26}, {$set: {salary: 900}});
Найдите первый продукт с ценой 300
и установите ему цену 900.
Массовое обновление
Метод updateMany обновляет все
документы, попавшие под фильтр.
Для примера давайте всем юзерам с возрастом
26 установим новую зарплату:
await coll.updateMany({age: 26}, {$set: {salary: 1000}});
Установите всем продуктам цену в 1000.
Установите всем продуктам цену в 300
и остаток в 10.
Получение и обновление
Метод findOneAndUpdate обновляет документ и
возвращает его с предыдущими данными. Пример:
let res = await coll.findOneAndUpdate({age: 25}, {$set: {salary: 333}});
console.log(res);
Получите первый продукт. При получении
добавьте ему поле touch, в которое
запишется момент времени получения
продукта.