我尝试使用springdatajpa进行查询,包括以下查询。但是我可以在任何给定的日期之间得到文件化的输出。
@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);
此查询返回一个空集,尽管有效日期介于。
有人能帮我解决这个问题吗?
附言:
实体类正在使用
@CreatedDate
@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false, updatable = false)
private Date createdDate;
传递给query的参数也带有时间戳。
1条答案
按热度按时间tmb3ates1#
我能够计算出,这个错误是由于日期格式不同造成的。因为Spring没有抛出任何错误,所以很难找出它。