Node.js Mongodb文件的值类型是BSON LONG,如何获取准确值?

时间:2019-01-03 22:51:37

标签: node.js mongodb mongodb-query bson

我有一个连接到Atlas数据库的mongo客户端,并且正在使用findOne查询来获取文档,并且正在获取其INT64值为BSON LONG类型的文档。当尝试使用toNumber函数获取它的原始值时,im会得到一个接近的数字,但不是准确的数字,这对我来说是非常糟糕的。 我该怎么做才能获得原始的准确值?

client.db(DATABASE_NAME).collection(SERVERS_COLLECTION).findOne({},{id: server_id});

server_id是一个整数。

示例: 308567034344767488变为308567034344767500

1 个答案:

答案 0 :(得分:0)

不知道它是否适用于您的情况,但是我通过将字段存储为字符串在MongoDB中解决了类似的问题(我的ORM始终转换为BSON LONG类型)。

由于您的ID似乎是您的ID,因此我建议您也阅读this discussion并相应地修改您的设计。