我的Postgres查询是:
select * from student where id=1 and created_dt::date between '2019-03-27' and '2019-03-28'
我的JPQL查询是
@Query("SELECT st FROM Student st WHERE st.id =:id AND st.createdDate BETWEEN :startDate AND :endDate")
问题是created_dt的数据类型为没有时区的时间戳 我只想检查日期月份和年份,而忽略其余的日期。我如何在jpql查询中做到这一点
注意:我必须在jpql查询中进行更改。无法访问数据库更改。另外,我想在我的界面中更新@Query,没有替代方法。我尝试了类似的方法,但是工作却很简单。
@Query("SELECT st FROM Student st WHERE st.id =:id AND CAST(st.createdDate
as date) BETWEEN :startDate AND :endDate")