json 如何在没有“numberLong”对象的情况下执行mongoexport

ws51t4hk  于 2023-01-06  发布在  Go
关注(0)|答案(1)|浏览(121)

我做了一个数据库的mongoexport转储:
第一个月
我看到我们的一些id被 Package 在"$numberLong"对象中,不幸的是,它并不一致,一些filemakerIds只是普通的int:

{"_id":{"$oid":"52126317036480948dc2abf2"},"filemakerId":4129,

而有些则不是:

{"_id":{"$oid":"52126317036480948dc2abf1"},"filemakerId":{"$numberLong":"4073"},

这些ID总是3位或4位数字。如果转储文件始终将它们显示为整数(例如"filemakerId":4129),对我来说会更容易。mongoexport可以强制这样做吗?

ogq8wdun

ogq8wdun1#

MongoExport工具的替代工具是MongoCompass,您可以在其中以JSON和CSV格式导出数据。
首先,转到聚合控制台并创建聚合管道。
在**$project**节中,将数据转换为双精度或整型。(我使用双精度)
添加以下内容:

{$project:{"filemakerId":{$toDouble:"$filemakerId"}}}

通过将数据转换为double/int,您将无法获得"filemakerId":{" $numberLong ":" 4073 "}。您将获得什么"filemakerId":4073
最后,点击导出并选择输出格式JSON/CSV。希望你能得到你期望的结果。

相关问题