JPQL 检查大于小于今天@Query 注解中的日期

JPQL Check greater than less than date today in @Query annotation

我想使用 JPQL 检查天气 validTill 日期是否大于 today。我知道我可以通过关注来实现。

Query q = em.createQuery("select e from MyEntity e where e.validTill > :today ");

并传递 :today 参数。 但这不是我想要的。我想使用 Spring 中 CrudRepository 中的 @Query 注释来做到这一点。

这是我在 CrudRepository

中的代码段
@Query("SELECT e FROM MyEntity e WHERE e.validFrom < TODAY")
Iterable<MyEntity> findAllValid();

我不知道我应该在 TODAY 的地方放什么来得到今天的日期。请帮助我。

我找到了。是这样的..

@Query("SELECT e FROM MyEntity e WHERE e.validFrom < CURRENT_DATE")
Iterable<MyEntity> findAllValid();

CURRENT_DATE - 评估为当前日期(java.sql.Date 实例)。

CURRENT_TIME - 评估为当前时间(java.sql.Time 实例)。

CURRENT_TIMESTAMP - 评估为当前时间戳,即日期和时间 (一个 java.sql.Time 邮票实例)。