此问题已经在这里有了答案:
我将在此处发布一些示例数据库查询来解释我的问题。我使用以下表达式将文档添加到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})在检查时...
不直接插入值,而是添加128位十进制数。为此,您可以通过以下方式在shell中插入: