[英]Spring Data JPA date query doesn't work for Date been and date greater than
我正在嘗試使用 Spring 數據 JPA 進行查詢,並帶有以下查詢。 但我可以在任何給定日期之間獲得歸檔的 output。
@Query(value = "SELECT new com.xxx.DonationByUserTotal(d.club.name, d.club.id , d.club.logo, SUM(d.amount)) " +
"from Donation d where d.user.id=?1 and d.createdDate >= ?2 GROUP BY d.club")
List<DonationByUserTotal> findByUserAndFromDate(int User, @Param("fromDate") Date fromDate);
此查詢返回給定用戶的所有日期,但不在給定日期之間過濾。
@Query("SELECT new com.xxx.DonationByUserTotal(d.club.name, d.club.id , d.club.logo, SUM(d.amount) )" +
"from Donation d where d.user.id=?1 and d.createdDate BETWEEN ?2 and ?3 GROUP BY d.club")
List<DonationByUserTotal> findByUserAndBetweenDates(int User,@Param("from")Date fromDate,@Param("to") Date toDate);
盡管兩者之間的日期有效,但此查詢返回一個空集。
有人可以幫我解決這個問題嗎?
PS:
實體 class 正在使用
@CreatedDate
@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false, updatable = false)
private Date createdDate;
並且傳遞給查詢的參數也帶有時間戳。
我能夠弄清楚,錯誤是由於日期格式不同造成的。 因為 spring 沒有拋出任何錯誤,所以很難弄清楚。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.