Обновление с тем же полем документа в mongodb - PullRequest
2 голосов
/ 19 апреля 2020

У меня есть этот документ. У которого есть схема ниже:

 rental:{
    total:Number,
    due:Number
}

Например, давайте предположим, что документ заполнен такими значениями:

 rental:{
    total:350,
    due:10
}

Я хочу чтобы заменить значение 'total' на 'due'. Итак, я хочу, чтобы оно было таким:

 rental:{
    total:350,
    due:350
}

Я наткнулся на $ set, я сделал что-то вроде этого: PS: "Пользователь" - это название модели (здесь я не указал)

User.updateMany({},{$set:{'due':"$total"}},function(err,..}{ 
//do whatever
    }

Но это не сработало. Я столкнулся с CastError. Я также натолкнулся на '$ replaceWith'. Но я немного не понял, как использовать это в моем случае. Любая помощь оценена. Спасибо

1 Ответ

1 голос
/ 19 апреля 2020

Вы можете использовать ниже запрос

db.collection.update(
  { },
  [{ "$set": { "due": "$total" }}]
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...