mongoimport csv文件,包含具有数组值的列

时间:2017-04-29 18:24:30

标签: mongodb mongoimport

我是MongoDB的新手,我正在尝试将包含程序数据的csv文件导入MongoDB。 csv文件(标签)中的一个字段包含一个值列表:

enter image description here

当我将其导入mongoDB时,整个字段显示为字符串:

“tags”: [ethics.philosophy.plato]

有没有办法可以编辑这个字段(在导入命令中或操纵数据库中的数据),这样标记字段就是这样的值数组:

“tags”: [“道德”,“哲学”,“柏拉图”]

我已经在线查看并通过mongoDB mongoimport文档但未找到相关解决方案。 提前谢谢!

1 个答案:

答案 0 :(得分:5)

导入CSV后,运行此命令。

db.whatevercollection.find().snapshot().forEach(function (el) {
   el.tags = el.tags.split('.');  
 db.whatevercollection.save(el); 
});

编辑: 您的CSV包含方形括号。

    db.whatevercollection.find().snapshot().forEach(function (el) {
    el.tags=el.tags.substring(1,el.tags.length-1);     
    el.tags = el.tags.split('.');  
         db.whatevercollection.save(el); 
});