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

相关推荐
没钥匙的锁11 天前
04-Java面向对象基础
java·开发语言·mongodb
喜欢的名字被抢了2 天前
MongoDB生产实践:架构设计、分片集群与运维监控
数据库·mongodb·教程
JSON_L2 天前
MongoDB文档关系详解
数据库·mongodb
葫芦和十三3 天前
图解 MongoDB 30|查询路由与广播查询:带片键定向,不带就广播
后端·mongodb·agent
葫芦和十三3 天前
图解 MongoDB 29|分片键陷阱:jumbo chunk、孤儿文档和写入热点
后端·mongodb·agent
霖霖总总3 天前
[MongoDB小技巧24]MongoDB $lookup 聚合阶段深度解析:从入门到实战
数据库·mongodb
霖霖总总3 天前
[MongoDB小技巧25]MongoDB 聚合管道内核剖析:$match 过滤与 $project 投影的终极指南
数据库·mongodb
喜欢的名字被抢了3 天前
MongoDB基础入门:从安装到CRUD与索引优化
数据库·mongodb
葫芦和十三4 天前
图解 MongoDB 27|分片策略:范围分片 vs 哈希分片
后端·mongodb·agent
全栈前端老曹4 天前
【MongoDB】安全与权限管理 —— 用户认证、角色权限、SSL 加密
前端·javascript·数据库·安全·mongodb·nosql·ssl