如何使用 @Query 在日期 Spring 数据 MongoDB 之间进行选择
Posted
技术标签:
【中文标题】如何使用 @Query 在日期 Spring 数据 MongoDB 之间进行选择【英文标题】:How to select between dates Spring data MongoDB using @Query 【发布时间】:2017-09-27 16:20:31 【问题描述】:我在 MongoDB 中使用 Spring 数据,我需要在实际日期和提前 7 天之间找到。
我已经创建了带有 @Query 注释的存储库,但不喜欢使用 Criteria 类。
您知道如何使用 @Query 进行用户操作吗?
提前致谢。
【问题讨论】:
【参考方案1】:你可以试试下面的查询。
使用@Query 注解
@Query(value = "'date': $lt: ?0, $gt: ?1")
List<SomeClass> findByDateBetween(Instant from, Instant to);
或者
使用存储库支持的关键字
List<SomeClass> findByDateBetween(Instant from, Instant to);
【讨论】:
@Query 解决方案解决了我的问题,非常感谢!! 有没有办法让这项工作同时还包括额外的过滤条件?【参考方案2】:你可以试试thquery。
@Query(value = "'champsDate': $gte: ?0, $lte: ?1")
List<entity> findByChampsDateBetween(Date startDate, Date endDate);
【讨论】:
以上是关于如何使用 @Query 在日期 Spring 数据 MongoDB 之间进行选择的主要内容,如果未能解决你的问题,请参考以下文章
Spring数据mongodb存储库语法中的@Query注释
Spring JDBC Template SQL-Query 按日期过滤
如何使用 laravel 中的 query() 函数对两个日期之间的数据进行排序