我正在从MongoDB的数据库文档中减去两个值,并得到不正确的十进制答案[重复]

问题描述 投票:1回答:1

我将在此处发布一些示例数据库查询来解释我的问题。我使用以下表达式将文档添加到MongoDB数据库:

db.mycollection.insertOne({ a: 0.3, b: 0.1 })

使用以下查询检查数据库时,得到的结果完全符合预期。

db.mycollection.find().pretty()

结果如下:

{ "_id" : ObjectId("xxxx"), "a" : 0.3, "b" : 0.1 }

但是当我对文档进行操作时,得到了完全出乎意料的答案。我尝试从a中减去b。我希望它返回0.2,但是我得到了0.1999999999999998这是我尝试的操作:

db.mycollection.aggregate([{$project: {result: {$subtract: ["$a", "$b"]}}}])

我将在此处发布一些示例数据库查询来解释我的问题。我使用以下表达式将文档添加到MongoDB数据库:db.mycollection.insertOne({a:0.3,b:0.1})在检查时...

javascript mongodb numbers subtraction
1个回答
1
投票

不直接插入值,而是添加128位十进制数。为此,您可以通过以下方式在shell中插入:

© www.soinside.com 2019 - 2024. All rights reserved.