簡體   English   中英

MongoDB / Mongoose-通過執行加法更新文檔中的數字

[英]MongoDB/Mongoose - Update a number in document by performing Addition

我有一個mongoDB集合,用於存儲節省的時間和成本。 當用戶第一次輸入數據時 ,文檔有點像這樣:

{ "fullName" : "john smith",
  "company" : "xyz",
  "email" : "john.smith@xyz.com",
  "timeSaved" : 50 //this is in minutes
  "moneySaved" : 10 //this is in dollars
}

現在,當用戶再次輸入數據時,我發現該用戶是否已經存在文檔,如果可以,我會得到它。

這次用戶輸入:

  1. 節省時間55
  2. 省錢10

我想新值添加到現有值。 所以在文件顯示之后:

"timeSaved" : 105 // old 50 + new 55
"moneySaved" : 20 // old 10 + new 10

什么是實現這一目標的最佳方法。 mongodb / mongoose中是否有一個內置函數可以對此提供幫助。

您可以通過$ inc運算符執行此操作。 $inc運算符使字段增加指定值

例如,在您的情況下:

UserModel.update(
    SomeFindCriteria,
   { $inc: { timeSaved: newTimeSaved, moneySaved: newMoneySaved } }
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM