当前位置: 首页 > 知识库问答 >
问题:

Spring Data JPA返回具有指定范围的日期列表(开始日期和结束日期)

蒙洛华
2023-03-14

目前,我正在尝试返回一个对象列表,该列表的日期属于参数给定的范围······但是,当我运行rest api调用时,没有返回任何东西。我不确定我是否正确地执行了这个Spring JPA请求,并决定获得一些反馈,是否我所做的事情是不正确的。

public class mResult{
/* other variables */
LocalDate runDate;
}
public interface mResultRepository extends CrudRepository<mResult,String> {
    List<mResult> findAllByRunDateBetween(LocalDate startDate,LocalDate endDate);
}
mResultRepository mRepository;

public List<mResult> getAllBetweenDates(LocalDate startDate, LocalDate endDate){
     return mRepository.findAllByRunDateBetween(startDate,endDate);
 }

我的repo包含JSON对象,例如:

{"runDate": "2019-02-05"}
{"runDate": "2019-02-06"}
{"runDate": "2019-02-10}

如果我的范围是2019-02-01到2019-02-09,那么它应该只返回这个范围内的那些。但是,当我运行我的API请求时,没有返回任何东西。我的Spring JPA请求正确吗?TIA

共有1个答案

万铭
2023-03-14

以前我也遇到过同样的问题,我尝试/find从数据库级别获得解决方案,但我没有找到任何适当的方法来解决DB级别的问题,所以我更希望它从Java端解决,就像下面给出的示例代码一样。

List<LocalDate> runningDates = Stream.iterate(startDate, date -> date.plusDays(1))
            .limit(ChronoUnit.DAYS.between(startDate, endDate.plusDays(1)))
            .collect(Collectors.toList());

我相信这对你有帮助。

 类似资料:
  • 问题内容: 我想检查日期是否在开始日期和结束日期之间。 我添加了一个where子句 但问题在于它不包含“ 2010-04-15”。 它应该包括结束日期,我该怎么办? 请帮我 问候, 潘卡 问题答案: 明确指定时间部分:

  • 问题内容: 我一直在尝试从时间戳字段中的第一个日期到最后一个日期生成一系列日期(YYYY-MM-DD HH)。我已经有了所需的内容,但是在尝试从表中获取开始日期和结束日期时遇到了一个问题。我有以下一个大概的想法: Postgres 9.3 问题答案: 您不需要CTE,这将比必要的成本更高。 而且您不需要强制转换为,当您向类型提供数据时,结果已经 是 数据类型。详细信息在这里: 在PostgreSQ

  • 问题内容: 好吧,假设我有一个看起来像这样的表: 任何人都有关于如何查询它的想法,因此数据看起来像 问题答案: 我不会将ID放在这里,因为我认为它与查询无关。如果您愿意,请稍后再说。这是一个MSSQL查询。 可以很容易地将其翻译为其他数据库类型。

  • 本文向大家介绍php计算给定日期所在周的开始日期和结束日期示例,包括了php计算给定日期所在周的开始日期和结束日期示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php计算给定日期所在周的开始日期和结束日期。分享给大家供大家参考,具体如下: 运行结果如下: PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用: 在线日期/天数计算器: http://tools.jb51.net/

  • 我有一个包含日期范围的列,我只想将它分别提取到开始和结束日期。不确定直接使用< code>datetime.strptime是否可行 谢谢

  • 本文向大家介绍PHP计算指定日期所在周的开始和结束日期的方法,包括了PHP计算指定日期所在周的开始和结束日期的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP计算指定日期所在周的开始和结束日期的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的php程序设计有所帮助。