mongodb 修改字段類型, 現在集合中有一個字段是string,要修改為date類型, 怎麼弄 ?
闭关修行中......
MongoDB是「無模式」的,對於欄位沒有元資料的概念存在,所以沒有辦法直接修改欄位類型,因為每個文件的欄位都有自己的類型。基於這種情況,只能遍歷所有的文件逐一修改欄位類型。例如原始文檔是:
{_id: ObjectId(...), date: "Fri May 20 2016 17:04:27 GMT+0800 (CST)"}
那就需要遍歷這個集合逐一修改欄位類型
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類型。
參考這個 https://zhuanlan.zhihu.com/p/... 可以解決 UTCDatetime
MongoDB是「無模式」的,對於欄位沒有元資料的概念存在,所以沒有辦法直接修改欄位類型,因為每個文件的欄位都有自己的類型。基於這種情況,只能遍歷所有的文件逐一修改欄位類型。例如原始文檔是:
那就需要遍歷這個集合逐一修改欄位類型
$type: 是型別。 2為string類型。
參考這個 https://zhuanlan.zhihu.com/p/... 可以解決 UTCDatetime