在mongoDb中,我有一个更新字段的问题。
我有一个名为userleavelist的集合,在此我有一个名为sickLeave的列。此列的字符串值像病残:“ 10.00”。我需要通过减去一些也是字符串“ 01.00”的值来更新此字段。我在尝试的查询下方给出了该值。 (即)10.00-01.00 = 09.00 in sickLeave column
db.userleavelist.update({
"userId": ObjectId(5d9fd84d3d598088d2ea5e0d)
},{
"$inc": { { '$toInt': '$sickLeave' }: -1 }
})
但是在实现此目标方面遇到问题。有人帮助我。
由于您有"10.00"
,所以$toInt
将不起作用。他们的文档说,
您不能转换浮点数,十进制或非基数10的字符串值(例如“ -5.0”,“ 0x6400”)
为了使其正常工作,字符串值必须是整数,即"10"
,而不是"10.00"
。
我认为您应该尝试使用$toDecimal而不是$toInt
。