根据我对mongo文档的理解,$trunc
操作应采用9.25
之类的数字并返回9
:
{ _id: 1, value: 9.25 }
db.samples.aggregate([
{ $project: { value: 1, truncatedValue: { $trunc: "$value" } } }
])
The operation returns the following results:
{ "_id" : 1, "value" : 9.25, "truncatedValue" : 9 }
如果是这样的话,我试图理解为什么我因为$ trunc操作而得到这个:98.0
为什么这个解析为98.0
而不是98
?我该怎么做才能从结果中删除.0
?
我正在生成一个Mongo视图,完整的管道步骤如下所示:
{
"daysAcc": {
"$trunc": {
"$divide": [{
"$subtract": [new Date(), '$visit.dateOfInit']
}, 86400000]
}
}
}
同样,我所有已解决的值都是这样的:98.0
,32.0
,145.0
等。我只想要98
,32
,{{ 1}}。
我已经读过,默认情况下,Mongo shell默认将浮点数视为145
类型。这似乎是个问题。如何在上面包含的管道操作中覆盖此类型赋值?