簡體   English   中英

Spring 數據 JPA 日期查詢不適用於日期和日期大於

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM