MongoExport有效的JSON查询构造

时间:2015-12-26 11:45:03

标签: json mongodb export

我试图导出我的收藏的一部分。我只想要包含特定“搜索”的文档。 ID。虽然要隔离相关文档,但我无法弄清楚我在定义查询时遇到了什么问题。这就是我要输入的内容:

mongoexport --db data --collection user_admin --fieldFile exportfields.txt --query {'search':ObjectId("5621634716c878440a4e4aaf")} --type=csv --out user_admin.csv

这是我收到的错误:

  

错误验证设置:查询   ' {'搜索':的ObjectId(5621634716c878440a4e4aaf)}'是无效的JSON:   无效字符' c'在构造函数参数之后

谢谢! :)

P.S。我使用的是Mongod v3.0.6

2 个答案:

答案 0 :(得分:5)

我在JSON查询中找到了正确的引号顺序,因为我通过Windows命令提示符运行它:

mongoexport --db data --collection user_admin --fieldFile exportfields.txt --query "{'search':ObjectId('5621634716c878440a4e4aaf')}" --type=csv --out user_admin.csv

答案 1 :(得分:1)

根据documentation,您必须将查询括在单引号中。但是,根据经验,这在使用Windows命令提示符时不适用。如果使用DOS命令提示符,则需要用双引号括起查询,但用单引号替换查询中的每个引号。

因此,如果您不使用Windows DOS,那么您的查询应该是这样的:

--query '{"search":ObjectId(5621634716c878440a4e4aaf)}'

或者从命令行执行mongoexport时喜欢这样:

--query "{'search':ObjectId(5621634716c878440a4e4aaf)}"