深究从MongoDB的ObjectId中获取时间信息
程序员文章站
2022-03-24 07:52:45
mongodb默认使用_id字段作为主键,类型为objectid。objectid的生成有一定的规则,详情可以查看这篇文章 - mongodb深究之objectid。如果你...
mongodb默认使用_id字段作为主键,类型为objectid。objectid的生成有一定的规则,详情可以查看这篇文章 - mongodb深究之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属性。
以上所述是小编给大家介绍的深究从mongodb的objectid中获取时间信息,希望对大家有所帮助
推荐阅读
-
SpringSecurity从数据库中获取用户信息进行验证的案例详解
-
从XML文件中获取信息的vbs代码
-
深究从MongoDB的ObjectId中获取时间信息
-
从后台servlet中,获取jsp页面输入的值,来删除用户一行信息
-
php-GridView显示PHP从数据库中查询获取的信息,英文显示正常,中文显示"??“
-
从BIRT报表文件中获取页面设置信息(页边距、纸张大小、输出方向)的方法_html/css_WEB-ITnose
-
php-GridView显示PHP从数据库中查询获取的信息,英文显示正常,中文显示"??“
-
从BIRT报表文件中获取页面设置信息(页边距、纸张大小、输出方向)的方法_html/css_WEB-ITnose
-
MySQL中按时间获取慢日志信息的方法_MySQL
-
从XML文件中获取信息的vbs代码