我需要一个 jpql 查询来查找所有 FinishDate 大于当前日期(从 00:00:00 开始)的 LoadFileHistory。例如大于 27/11/2012 00:00:00。
我已经有了这个“从 LoadFileHistory o 中选择 o,其中 o.finishDate = CURRENT_DATE”,但什么也没得到。
你应该得到今天的查询日期,就像这里详述的那样(java.util.Date 也有小时、分钟、秒......)
您应该将其提供给您的查询:
Query q = em.createQuery("select o from LoadFileHistory o where o.finishDate > :today ");
q.setParameter("today",todaysDateObject,TemporalType.DATE);
q.getResultList();
如果您正在寻找带有日期的时间级别过滤。这对我有用。
Date now = DateUtils.addMinutes(new Date(), -15);
Query q = em.createQuery("Select u From Users u Where u.dateCreated > :today");
q.setParameter("today",now,TemporalType.TIMESTAMP);
DateUtils 是 apache 常见的。