首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新mongoDb集合中预先存在的字段数据类型(string=>日期

更新mongoDb集合中预先存在的字段数据类型(string=>日期
EN

Stack Overflow用户
提问于 2021-03-20 06:24:56
回答 2查看 23关注 0票数 1

我正在尝试更新一个最初捕获为字符串而不是日期类型的字段。当前,插入到集合中的查询已被修改,因此将来插入到该字段的查询为date。数据类型

但是,在修改仍然具有字符串数据类型的查询之前,我正在尝试更新以前插入的数据

这是我尝试过的,但给出了错误

代码语言:javascript
复制
db.collection.update_one({“clusterTime”:{"$type":“string”}},{"$set":{“clusterTime:datetime.datetime.strptime(’$clusterTime’,’%y-%m-%d’).date()}})

我真的很感谢大家的贡献。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-20 08:51:12

使用forEach遍历记录,转换为日期,然后保存文档

代码语言:javascript
复制
db.collectionName.find({ 'clusterTime' : { '$type' : 'string' }} ).forEach(function (doc) {   
  doc.clusterTime = new Date(doc.clusterTime); // convert field to date
  db.collectionName.save(doc);
});
票数 0
EN

Stack Overflow用户

发布于 2021-03-20 11:13:58

用于更新数据类型的python版本

代码语言:javascript
复制
db.collection.update(
   {
      "clusterTime":{
         "$type":"string"
      }
   },
   [
      {
         "$set":{
            "clusterTime":{
               "$dateFromString":{
                  "dateString":"$clusterTime",
                  "format":"%Y-%m-%d"
               }
            }
         }
      }
   ]
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66716298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档