使用列中的数组将csv文件导入MongoDB

时间:2016-01-11 03:24:29

标签: mongodb import nosql

我有一个Excel文件,我将其转换为csv并导入到我正在运行的MongoDB存储中,但是csv文件中的一列数据出现了问题。一个名为Room的列偶尔(但不总是)包含以逗号分隔的值(例如“101,103”)。

运行:

$ mongoimport -d mydb -c things --type csv --file locations.csv --headerline

没有给出任何错误,但是对于应该有2个Room值的文档,只有一个。例如,“101,102”在db。中成为“101”。

是否有mongoimport选项允许我为某列指定数组?

1 个答案:

答案 0 :(得分:0)

首先,您需要将数据从CSV导入为

$ mongoimport -d mydb -c things --type csv --file locations.csv --headerline

之后,你只需要使用

db.things.find().snapshot().forEach(function (el) {   el.Room = el.Room.split(',');   db.things.save(el); });

所以,它会解决你的问题。