mongodb - mongo怎么导出一个内嵌数组中的某些信息
本文介绍了mongodb - mongo怎么导出一个内嵌数组中的某些信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
比如这样
{
"_id": 1,
"array": [
{"name": "a", "price": "2","amount":1},
{"name": "b", "price": "2","amount":2},
{"name": "c", "price": "3","amount":4}
]
}
我只想把name属性和price属性导出,该怎么做呢?用mongoexport貌似无法实现啊,诸位有什么好的办法吗?求教了
解决方案
mongo支持js脚本,可以用javascript脚本批量处理和导出数据:
#!/usr/bin/env mongo
db = db.getSiblingDB(db_name)
// db.auth("user", "passwd");
result = {};
db.clt_name.find().forEach(function(r) {
// 这里是回调函数,r就是每一条记录,是一个object对象,可以遍历r.array,把需要的属性存入result
})
for (var key in result) {
// 按照你希望的格式输出:
print(key + "\t" + result[key])
}
在mongo环境里可以使用的functions见Write Scripts for the mongo Shell
这篇关于mongodb - mongo怎么导出一个内嵌数组中的某些信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文