我试图将Mongo中的一些数据格式化为CSV。其中一个字段存储为ISODate,因此在查询Mongo时,结果如下:
... ISODate("2011-11-19T00:23:38.786Z") ...
我有一个命令如下:
C:\Mongo\bin\mongoexport --csv -f "DOB","Name","Email" -c People -d PeopleDataStore -h [hostname]
这个MongoExport命令会产生如下内容:
{ "$date" : 1321579509347 },"Bob","test@test.com"
我怎样才能得到MongoExport输出的日期像“2011-11- 19 T00:23:38.786Z”一样,即不是整数表示,也不是用代码结构 Package 的?
请注意,我尝试从命令行完成所有这些操作,而不是从可以处理结果的应用程序中完成。
3条答案
按热度按时间30byixjq1#
不要认为仅使用
mongoexport
是可能的,您需要编写自己的小型导出脚本或后处理日期值,以将整数(自1970年1月1日以来的毫秒)转换为ISO字符串格式。qvtsj1bj2#
在mongo 2.0.1上试过,输出结果正是你想要的
of1yzvn43#
你可以使用sed来替换它。
首先,你可以使用mongoexport来获取文件。一旦你有了文件,你可以使用sed来删除'$date'。