【发布时间】:2019-04-30 17:52:38
【问题描述】:
问题:如果我使用 $unwind,如何从 mongo 导出以便可以导入 SQL Server?
我需要使用 $unwind,这意味着我不能使用 mongoexport.exe。 Mongo.exe 为 json 提供不同的输出,如下所示。输出我无法加载到 SQL Server。我会导出为 csv 输出,但我的数据包含逗号。我会使用 $out 首先将我的数据复制到一个新集合中,然后使用 mongoexport,但我正在查询云中的生产服务器,我只有读取权限。
为了说明我的问题,我创建了一个集合,其中包含一个日期字段“edited_on”的记录。您可以在这里看到 mongoexport 输出以 ["_id:{$oid.... 开头,而 mongo 输出以 {"_id : ObjectID(....
*** 蒙古出口
命令:
mongoexport --quiet --host localhost:27017 --db "zzz" -c "Test_Structures" --fields 已编辑的_on --type json --jsonArray --out C:\export_test.json
输出:
[{"_id":{"$oid":"5aaa1d85b8078250f1000c0e"},"edited_on":{"$date":"2018-03-15T07:15:17.583Z"}}]
我可以使用 OPENROWSET 和 OPENJSON 将此数据导入 SQL。 此处描述:https://www.mssqltips.com/sqlservertip/5295/different-ways-to-import-json-files-into-sql-server/
*** 蒙哥
命令:
mongo localhost/UW --quiet -eval "db.Test_Structures.aggregate({ $project: { _id: 1 ,edited_on: 1} } )" > C:\aggregate_test.json
输出:
{ "_id" : ObjectId("5aaa1d85b8078250f1000c0e"), "edited_on" : ISODate("2018-03-15T07:15:17.583Z") }
【问题讨论】:
标签: sql-server mongodb mongodb-query