Я искал способ создания оператора обновления, который займет существующее числовое поле и изменит его с помощью выражения. Например, если у меня есть поле под названием Price, возможно ли сделать обновление, которое устанавливает цену до 50% от существующего значения?
Итак, учитывая { Price : 19.99 }
Я хотел бы сделать db.collection.update({tag : "refurb"}, {$set {Price : Price * 0.50 }}, false, true);
Можно ли это сделать или мне нужно прочитать значение обратно клиенту, изменить, а затем обновить? Я предполагаю, что тогда вопрос заключается в том, могут ли выражения использоваться в обновлении и могут ли они ссылаться на обновляемый документ.