mongodb 修改字段類型, 現(xiàn)在集合中有一個(gè)字段是string,要修改為date類型, 怎麼弄 ?
閉關(guān)修行中......
MongoDB是「無(wú)模式」的,對(duì)於欄位沒(méi)有元資料的概念存在,所以沒(méi)有辦法直接修改欄位類型,因?yàn)槊總€(gè)文件的欄位都有自己的類型。基於這種情況,只能遍歷所有的文件逐一修改欄位類型。例如原始文檔是:
{_id: ObjectId(...), date: "Fri May 20 2016 17:04:27 GMT+0800 (CST)"}
那就需要遍歷這個(gè)集合逐一修改欄位類型
db.coll.forEach(function(doc) {
db.coll.update({_id: doc._id}, {$set: {date: new Date(doc.date)}});
});
db.demo.find({g:{$type:2}}).forEach(function(x){
x.g=new Date();
db.demo.save(x)
}
)
$type: 是型別。 2為string類型。
參考這個(gè) https://zhuanlan.zhihu.com/p/... 可以解決 UTCDatetime