我想使用--upsert
选项将导出的json文件导入到现有集合(同一个)中,但问题是我想只更新特定字段而不是所有数据。作为一个例子,我已经收集名为users
,我把它出口到users.json
,那么我想导入此文件json
到具有相同集合另一个数据库,但我想只是进口领域,如email
,username
& avatar
,这样我就可以保持原样的其他数据没有任何改变。我该如何做这样的事情?你有任何想法或快速解决这个问题?从导出的mongo json文件导入到MongoDB中的特定字段
0
A
回答
0
使用Python
import pymongo
import json
conn = pymongo.MongoClient()
collection = conn['db']['collection']
for doc in json.load(open('users.json')):
new_doc = {k: v for k, v in doc.iteritems() if k in ('email', 'username', 'avatar')}
collection.update({'_id': doc['_id']}, {'$set': new_doc})
0
限制你导出的字段可能是更好的方法。还有就是--fields
flag available in mongoexport
:
mongoexport --fields foo, bar, baz
将只出口_id
,foo
,bar
和baz
。
+0
那么我在导入文件时如何合并这些字段呢? – Azzurrio
0
这里是一个例子。第一个请求导出一个JSON文件。 第二个请求使用合并选项导入文件。
mongoexport --db mydb --collection mycollection --fields field1,field2 --query "add a query if necessary" > test.json
mongoimport --db mydb --collection mycollection --file test.json --mode merge
相关问题
- 1. 将大型JSON文件导入到mongo
- 2. 导入大型JSON文件到MongoDB的
- 3. 很多json文件导入到mongodb
- 4. 将json文件导入到mongodb
- 5. 从查询导出特定的字段到可下载的csv文件
- 6. 将json的目录导入到mongoDB中
- 7. 从SimpleDB导出到Mongo?
- 8. Angular JS,从JSON文件导入一些特定的数据
- 9. 如何从Java导入JSON文件到mongodb
- 10. 用mongo脚本导入JSON
- 11. 将子图(sideeffect)导出到json文件并导入图中
- 12. 的MongoDB - 导入CSV到嵌套文件
- 13. 从变量导出到JSON文件
- 14. 从URL导入JSON文件到R
- 15. 从JSON文件导入数据到R
- 16. 从文本文件中替换JSON中的特定字段
- 17. 如何从MongoDB中的集合中导出单个字段?
- 18. 从现有字段导出的JIRA中的自定义字段
- 19. Pymongo如何将json文件导入到mongodb中
- 20. MySQL的导出表到文本文件中的字段名
- 21. 从Java中的JSON文件中检索特定的字段
- 22. 将未知编码的文件从Python导入到MongoDB中
- 23. 如何将文件中的特定文本导入到excel中?
- 24. 导出和导入Parse.com中的文件
- 25. 只从svn仓库导入特定的文件到git
- 26. 导入JSON文件
- 27. 如何将逗号分隔的JSON文档导入到Mongodb中?
- 28. 从Outlook中的特定文件夹导入电子邮件
- 29. MongoDB的导入导出数据库
- 30. MongoDB的导入和导出为CSV
嗨@Azzurio,你找到了一个不错的解决方案?我也有同样的问题。 Eric – elhostis