小编典典

Spring Data JPA-查询日期减去2天不起作用

sql

我有此查询,该查询会比2天前更新一些价格,但不起作用

  @Transactional
    @Modifying
    @Query("update HotelDailyPrice hdp  set hdp.price = (select avg (hp.price) "
            + "from HotelPrice hp where hp.id = ?1 and hp.updateDate > CURRENT_DATE - 2), hdp.day = ?2 ")
    void updateDailyAveragePrice (Hotel hotel, String dayDate);

阅读 177

收藏
2021-04-22

共1个答案

小编典典

实际上,JPA不支持时间段操作,因为并非所有数据库都支持它。因此,您有以下选择:

  1. 以编程方式计算日期(即使用日历API或Java 8 Date Time API)
  2. 使用本机查询
  3. 如果您的JPA提供者允许,请使用具体的实现。但是AFAIK受欢迎的JPA提供程序没有给您这样的选择。
2021-04-22