将mongodb字段类型从int更改为double

时间:2016-04-12 09:28:38

标签: mongodb

我正在使用 mongoimport csv 导入 mongodb 。由于 csv 我无法指定字段类型,0将被视为一个int,但我需要它是一个double。所以我试着编写一个JavaScript文件来进行转换:

db.col.find().forEach( function(obj) { obj.n = new double( obj.n ); db.col.save(obj); } )

但它报告错误:

Cannot use 'commands' readMode, degrading to 'legacy' mode
2016-04-12T17:08:15.286+0800 E QUERY    [thread1] ReferenceError: double is not
defined :
@(shell):1:41
DBQuery.prototype.forEach@src/mongo/shell/query.js:477:1
@(shell):1:1

我尝试了DoubleNumberDoublenumberDouble这些都没有效果。

1 个答案:

答案 0 :(得分:0)

尝试使用

db  .col
    .find()
    .forEach(function(obj) { 
        obj.n = parseFloat(obj.n) || 0;
        db.col.save(obj);
    });