我想将聚合的结果保存到csv文件中.
使用mongo cmd线工具我可以这样做以获得我想要的结果:
db.compras.aggregate({ $group : { _id : "$data.proponente", total : { $sum : "$price" } }}
Run Code Online (Sandbox Code Playgroud)
我如何将其转换为将结果保存到csv的mongoexport命令?
我正在尝试使用以下mongoexport调用从我的mongodb获取某一天的订单:
mongoexport --db store --collection user_data --query "{'order.created_order':{$gt:ISODate("2013-02-05T00:00:00.000Z"),$lt:ISODate("2013-02-06T00:00:00.000Z")}, 'order.status':'paid'}" --out ordersfeb6.json
但我目前遇到以下错误:
Thu Feb 7 18:33:43 Assertion: 10340:Failure parsing JSON string near: 'order.cre
0x56a223 0x5712e5 0x53e0f7 0x53e21e 0x8b7739 0x524f2b 0x5258a3 0x7fa7b77bd76d 0x525975
mongoexport(_ZN5mongo15printStackTraceERSo+0x23) [0x56a223]
mongoexport(_ZN5mongo11msgassertedEiPKc+0xc5) [0x5712e5]
mongoexport(_ZN5mongo8fromjsonEPKcPi+0x377) [0x53e0f7]
mongoexport(_ZN5mongo8fromjsonERKSs+0xe) [0x53e21e]
mongoexport(_ZN6Export3runEv+0x489) [0x8b7739]
mongoexport(_ZN5mongo4Tool4mainEiPPc+0x72b) [0x524f2b]
mongoexport(main+0x23) [0x5258a3]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7fa7b77bd76d]
mongoexport() [0x525975]
assertion: 10340 Failure parsing JSON string near: 'order.cre
Run Code Online (Sandbox Code Playgroud)
从这个问题mongoexport JSON解析错误我知道javascript用于评估mongo查询的某些部分.我想知道:$ gt和$ lt运算符是否需要javascript,这是我的问题吗?如果没有,我不确定我的查询有什么问题,我们将非常感谢任何建议.谢谢你的阅读!
我有一个MongoDB,我想导出到.csv文件.
文献:
{
"id" : 28,
"organisation" : "Mickey Mouse company",
"country" : "US",
"contactpersons" : [{
"title" : "",
"typecontact" : "D",
"mobilenumber" : "757784854",
"firstname" : "Mickey",
"lastname" : "Mouse",
"emailaddress" : "mickey@mouse.com"
}],
"modifieddate" : "2013-11-21T16:04:49+0100"
}
Run Code Online (Sandbox Code Playgroud)
我想导出所有文档,只想要字段contactpersons.firstname和contactpersons.emailaddress
我用这个命令行:
mongoexport -o /tmp/export.csv -host dbmongo -port 27017 -db organisation -collection organisationa -u user -p password -csv -fields 'contactpersons.0.firstname, contactpersons.0.emailaddress'
Run Code Online (Sandbox Code Playgroud)
这或多或少都有效,它只导出字段firstname而不是emailaddress.我还需要它导出字段emailaddress.
知道我怎么能这样做吗?即使我确实给了emailaddress字段,我也不明白为什么它不起作用.做错了.
谢谢你的帮助!
我有一个Mongo数据库数据库,我试图从这个数据库中的一个集合导出几个"记录".这是我试图使用的命令和我得到的错误:
mongoexport --collection my_collection --out my_collection.json --limit 10 --db my_db --username mongoadmin --password secret --host localhost
connected to: localhost
assertion: 18 { ok: 0.0, errmsg: "auth failed", code: 18 }
Run Code Online (Sandbox Code Playgroud)
不知道这里有什么问题.
我在 Atlas 中有名为“test”的远程数据库,我想将集合名称 image_table 作为 JSON 文件下载。
在mac终端中:
$ mongoexport –db test –collection image_table image.json 我得到了错误>
020-01-16T13:49:12.822+0100 错误解析命令行选项:位置参数太多:[–db test –collection image_table image.json] 2020-01-16T13:49:12.822+0100 试试 'mongoexport --help ' 想要查询更多的信息
我正在使用mongodb 2.4.3,我无法让mongoexport工作.我用每个命令得到的错误信息是:
"JavaScript execution failed: SyntaxError: Unexpected identifier"
起初我认为问题出在我的查询参数上,这些参数很长.但是find()在查询中运行良好,所以我知道语法没问题.然后,我使用查询创建了一个新集合,并尝试使用以下内容导出集合:
mongoexport --db Oct2012 --collection sept8subset --csv --fields "text","created_at","user.screen_name","user.followers_count" --out sept8.csv
mongoexport --db Oct2012 --collection sept8subset --csv --fields text,created_at,user.screen_name,user.followers_count --out sept8.csv
mongoexport -d Oct2012 -c sept8subset --csv --fields text,created_at,user.screen_name -o sept8.csv
mongoexport --db Oct2012 --collection sept8subset --dbpath ~/db (should need dbpath as mongod instance is running)
mongoexport --db OCt2012 -collection sept8subset -o sept8.txt
mongoexport --db Oct2012 --collection sept8subset
在每种情况下,我得到"JavaScript execution failed: SyntaxError: Unexpected identifier"
.SyntaxError在哪里?
我正在尝试复制的集合有50,339个对象.如果它对于mongoexport来说太大了,我会从集合中取出5个文件来制作新的集合.然后我尝试使用与上面相同的命令结构导出它们.我仍然得到相同的错误消息.
现在我想知道问题是mongoexport是否无法处理涉及日期的数据.MongoDB文档指出我可能想使用客户端驱动程序编写自己的导出脚本.
有谁知道我的问题在这里?非常感谢你能提供帮助.
工作:
.\mongoexport.exe --db mydb --collection slideproof_user_event_date_count --csv --out
events.csv --fields '_id,first_day'
.\mongoexport.exe --db mydb --collection slideproof_user_event_date_count --out
events.json --fields '_id._p,first_day'
Run Code Online (Sandbox Code Playgroud)
不工作(只有第一个字段/列有内容),:
.\mongoexport.exe --db mydb --collection slideproof_user_event_date_count --csv --out
events.csv --fields '_id._p, first_day'
Run Code Online (Sandbox Code Playgroud)
如何为子文档字段启用.csv的正确输出?
我有这个查询,但我得到一个语法错误:意外的标识符
mongoexport --db ium --collection events \
--query 'db.events.find({'created_at' : {
$gte: ISODate("2016-03-01T00:00:00.001Z"),
$lte: ISODate("2016-03-29T23:59:59:59.000Z")
},
"name" : "UPDATE_SUCCESS"})' \
--out guille1_test.json
Run Code Online (Sandbox Code Playgroud)
这有什么不对?
目标:将我的本地 mongodb 数据迁移到 mongodb atlas 集群。
尝试:
1. 将本地数据导出为 json。
2.导入json到集群。
操作系统:Linuxmint 19.1 Cinnamon
mongo --version MongoDB shell version v4.0.10
mongod --version db version v3.6.3
我还有一个单独的数据库文件夹。
所以首先我开始
/home/me/mongodb/bin/mongod --dbpath=/home/me/mongodb-data
Run Code Online (Sandbox Code Playgroud)
然后我打开一个终端并输入
~/mongodb/bin $ mongoexport --db task-manager --collection users --out ~/Desktop/test.json
Run Code Online (Sandbox Code Playgroud)
我希望任务管理器数据库中的用户集合将打印为 test.json 文件,但出现错误:
2019-06-18T22:05:06.108+0200 connected to: localhost
2019-06-18T22:05:06.108+0200 Failed: Failed to parse: { find: "users", filter: {}, sort: {}, skip: 0, snapshot: true, $readPreference: { mode: "secondaryPreferred" }, $db: "task-manager" }. Unrecognized field 'snapshot'.
Run Code Online (Sandbox Code Playgroud)
出了什么问题,我应该怎么做才能解决它?有没有更好的方法来迁移数据?
我正在尝试使用以下命令导出我的 mongo 集合之一:
"C:\Program Files\MongoDB\Server\3.2\bin\mongodump" -h 127.0.0.1 --port 3001 -d meteor
Run Code Online (Sandbox Code Playgroud)
我有一个带有我的 db 集合的 BSON 文件,但我想要它在一个 JSON 文件中。
我该怎么做?