记录使用mongotemplete关于时间查询时的大坑

1、问题:

在使用条件查询mongdb数据库的时候,涉及到使用时间范围来查询数据,比如当时使用的是:1990-01-01T00:00:00 到1900-02-02T00:00:00查询的是1月1号到1月2号两天的数据,但是在使用

Query.query(criteria);

进行查询的时候,和使用

Aggregation.match(criteria);

进行查询得出的结果不一致,通过对数据进行对比,得出正好相差8小时的数据,可以判断出query中的数据比match中的多了8小时数据。

2、解决:

通过测试得知,使用match时,如果不使用Date类型,就会被减去8,但是如果使用Date类型,query就会减去8,所以最好的方式还是在存储的时候就把使用的时间减去8。所以目前查询的时候只能是将这两个查询使用不同的时间格式进行查询。我使用的是query使用LocalDateTime,match使用Date。

相关推荐
蜗牛互联网14 小时前
MongoDB Atlas Agent Engine之后,如何用版本门禁防止陈旧写入
java·数据库·人工智能·后端·mongodb
天空'之城5 天前
单片机基础核心知识点汇总(四十六)
数据库·单片机·mongodb
Dragon_qu·x6 天前
MongoDB 高可用集群部署
运维·数据库·mongodb·k8s·helm
MayBaymax14 天前
MongoDB 索引与事务
java·数据库·mongodb
&不羁之风&14 天前
从 MySQL 到 MongoDB:80 万系统日志(sys_log)平滑迁移完整实战(含 Windows 环境 mongoimport 安装与避坑)
mysql·mongodb
那人如此可好16 天前
MongoDB常用命令大全
mongodb·db
MayBaymax16 天前
MongoDB 基础概念
java·数据库·mongodb
DBA小马哥17 天前
MongoDB 迁移切流回滚怎么做?停机窗口、增量同步、数据校验全套检查清单
mongodb·迁移学习
我是唐青枫19 天前
MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战
mongodb
唐青枫19 天前
MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战
mongodb