有时,从mongo库中查询的数据过大不方便查看或者需要将查询的数据导出,这个时候就需要构建查询语句,然后利用mongo执行查询语句来进行导出。
构建查询语句
假设需要查询的字段为:username
,id
, add
,那么语句大致为(存为query.js
):
// query.js
db.collection.find({},{"id":1, "username":1, "add":1});
输出重定向执行查询
mongo localhost:27017/db_name /path/to/query.js > /path/to/result.json
这样就可以得到查询结果result.json
文件。
导出csv格式
此时只需将query.js
稍加修改即可:
db.collection.find({},{"id":1, "username":1, "add":1}).forEach(
function(document) {
print(document.id + "," + document.username + "," + document.add);
}
)
再来执行
mongo localhost:27017/db_name /path/to/query.js > /path/to/result.csv
就可以得到.csv
格式的文件。