MongoDB日期类型查询
一、前言
MongoDB 里面的日期类型是没有时区概念的,默认存储的是 ISODate("2018-04-02T13:19:16.418Z") 这种格式的零时区时间,比北京时间晚了八个小时。
工作中遇到了一个问题,怎么查询比当前时间小30秒之内的文档记录呢?
时区问题有关系吗?日期类型要怎么比较?怎么表示当前时间呢?日期要怎么实现加减呢?
二、方案
1、时区问题
其实时区问题并不是一个太需要关注的问题,因为MongoDB 提供了一个Javascript shell 窗口,支持 js 的语法。进行日期类型比较的时候,MongoDB 会自动处理 js 日期类型 和 MongoDB 日期类型间的时区问题。
2、怎么表示当前时间
既然我们已经有了 Javascript shell 窗口,那么表示当前时间不是一件轻而易举的事情了吗?直接一个 new Date() 就搞定了!
3、实现日期加减
有了 js 语法,日期的加减也不是特别难想了吧?
1 var now = new Date(); 2 now.setSeconds(now.getSeconds() - 30);
4、实现查询
万事俱备,只欠东风。让我们来看看,最后的MongoDB查询是怎么样的吧?
1 var now = new Date(); 2 now.setSeconds(now.getSeconds() - 30); 3 db.driverLocation.find({"uploadTime":{"$gte":now}}).sort({"uploadTime":-1});
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
hi-nginx-1.4.2发布,多项重要更新
支持多种编程语言混合开发web应用的通用服务器hi-nginx-1.4.2已经发布了。 此次发布包含多项重要更新: 支持python2和3,通过编译选项--with-http-hi-python-version 删除boost.python依赖,优化python3兼容性,性能有所提高 支持lua和luajit,通过编译选项--with-http-hi-lua-version 为python专门定制了hi.py框架,单一入口,类似bottle或者flask一样,对性能有一定影响,但还是比bottle和flask快得多 为php7专门定制了类似hi.py的微型框架,单一入口,类似bottle或者flask,对性能没什么影响 hi.py示例: 1 from hi import hi 2 app =hi() 3 4 @app.route(r'^/test/?$',['GET','POST']) 5 @app.route(r"^/$",['GET']) 6 def hello_world(req,res,param): 7 res.header('Content-Type','text/plai...
- 下一篇
IntelliJ IDEA插件——冷门神器分享
IntelliJ IDEA就不必介绍了,至今还能保持IDE前三的神器,如今java程序员的首选,今天介绍几款冷门但绝对是神器的IDEA插件。 前言 IDEA自不必说,IDEA插件是开发中必备的神器,相信大家对常见的插件都如数家珍,如:findbug、checkstyle、JRebel、key promoter以及刚出的新贵阿里代码规范,这些都给开发人员带来极大的效率提升,今天我给大家介绍的几个,可能在很多插件推荐的文章里都没有提到,但是绝对是值得尝试的几款插件。 grep console java 开发的过程中,日志都会输出到console,输出的内容是非常多的,所以需要有一个工具可以方便的查找日志,或者可以非常明显显示我们关注的内容,grep console就是这样的一个工具。 安装完成后,在console中右键就能打开。 image 并且可以设置不同的日志级别的显示样式。 image 我就把ERROR设置为红色,比较容易看到。 当然,也可以直接根据关键字搜索你想要的。 image 最赞的是,搜索条件是支持正则表达式的。基本能满足所有的需求了。 MyBatis Log Plugin ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路