记录使用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。

相关推荐
bing.shao1 天前
mongodb与redis在聊天场景中的选择
数据库·redis·mongodb
jyd01241 天前
MongoDB 与 Java 实体类型 LocalTime 时区转换问题解决方案
java·数据库·mongodb
一介草民丶2 天前
Linux | Mongodb 6 离线安装
linux·运维·mongodb
桃子不吃李子3 天前
一些工具的使用
javascript·mongodb·node.js
岁岁岁平安4 天前
本机 MongoDB 注册系统服务、启用security认证
数据库·python·mongodb
WangHappy4 天前
Windows搭建MongoDB(2):运行数据库
mongodb
岁岁岁平安4 天前
python MongoDB 基础
数据库·python·mongodb
半夏知半秋6 天前
mongodb的复制集整理
服务器·开发语言·数据库·后端·学习·mongodb
tritone7 天前
在优豆云的免费云服务器上开启MongoDB学习之旅
服务器·学习·mongodb
小涂7 天前
在Linux(deepin-community-25)下安装MongoDB
linux·运维·mongodb