2014-09-05 33 views
0

我想将int数组转换为字符串。 我INT:MongoDB:如何将int数组转换为字符串

"key" : 280 

如果我只有1个整数改变,我可以使用:

db.collection.find({ 'key' : { $type : 16 } }).forEach(function (x) { x.key = ""+x.key; db.collection.save(x);}); 

$ 16型描述了32位整数。有了这些代码,一切都很好。

但是,如果我有这样一个数组:

"key" : 280, 193, 213 

,我使用此代码我得到:

"key" : "280,193,213" 

,但我想 - >"key" : "280","193","213"

有任何的解决方案?

回答

0

请试试这个:

db.collection.find({ 'key.0' : { $type : 16 } }).forEach(function (x) { 
    var arr = []; 
    x.key.forEach(function (e) { arr.push("" + e); }); 
    x.key = arr; 
    db.collection.save(x); 
}); 
+0

谢谢!工作正常! – CruelMaze 2014-09-05 09:47:20