MongoDB的objectid常见忘写时间,取当时时间的方法是什么
Admin 2022-05-31 群英技术资讯 519 次浏览
MongoDB默认使用_id字段作为主键,类型为ObjectId。ObjectId的生成有一定的规则。如果你在写入数据库的时候忘记写入创建时间,不用担心,完全可以通过_id字段的值来还原当时的时间。看下面的mongodb script脚本:
db.getCollection('fees').find({}).forEach(function(item){ var _str = item._id.toString().substr(10, 8); var _date = new Date(Number(parseInt(_str, 16).toString() + '000')); item.createTime = _date; db.fees.save(item); })
forEach可以遍历collection中的每一条数据,然后逐一进行修改。item._id.toString()会将整个ObjectId("...")当成一个字符串来处理,然后从第10个字符开始,取8个字符,得到的是这条数据创建时的时间戳(不带毫秒位数)。在后面补上毫秒位数”000“,然后用Date()方法构造成时间对象,赋值给createTime属性。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要给大家介绍了在Linux系统下下MongoDB数据库实现自动备份的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
mongodb的数据库修改的方法:1、使用“use DATABASE_NAME”命令修改使用的数据库。2、使用update()方法修改数据库中的文件。
我们知道mongodb是分布式文档存储数据库,而mongodb部署架构分为单机,可复制集和分片群集。其中,分片群集是比较复杂,而且运维难度比较高的。很多人对于mongodb分片集群都不是很理解,这篇文章就给大家介绍一下MongoDB分片集群的问题。
mongodb中group by的使用:用db.collection.group({ key, reduce, initial[, keyf] [, cond] [, finalize] })实现分组。
mongodb存储json数据类型的方法:首先用JSON.parsetObject()将数据转换成json数据;然后用mongoTemplate.insert()完成存储。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008