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