如何使用休眠模式计算几天内两个日期之间的差异

时间:2019-04-17 14:27:44

标签: java hibernate date timestamp hql

我正在尝试使用HQL更新两个日期之间的差等于特定天数的记录。

我正在使用此代码:

@Transactional
public void resetSendingAttempts(final Integer sendingAttemps, final Integer numberOfDaysToAttempt){
    getCurrentSession().createQuery("UPDATE Donnee dp set  dp.DP_NBR_TENTATIVE_ENVOI= 0, dp.DP_DATE_DERNIERE_TENTATIVE = Sysdate() where  dp.DP_NBR_TENTATIVE_ENVOI >= :sendingAttemps  and dp.DP_DATE_DERNIERE_TENTATIVE <= sysdate() - :numberOfDaysToAttempt").setParameter("sendingAttemps", sendingAttemps).setParameter("numberOfDaysToAttempt", numberOfDaysToAttempt).executeUpdate();
}

字段 DP_NBR_TENTATIVE_ENVOI 被声明为TIMESTAMP类型。 该HQL查询无法正常工作,我在网上查找了诸如TimeStAMPDiff()之类的日期函数,但HQL不支持它。

还有其他使用HQL的方法吗?

0 个答案:

没有答案