JPA查询日期时间列中的日期

时间:2017-02-11 21:36:28

标签: date datetime jpa

我正在尝试为今天创建的所有订单构建查询。

我的订单实体有一个像这样的日期时间字段:

@Column(name = "OrderCreationDate")
@Temporal(TemporalType.TIMESTAMP)
private Date orderCreationDate;

命名查询:

@NamedQuery(name = "OrderHeader.findByOrderCreationDate", query = "SELECT o FROM OrderHeader o WHERE o.orderCreationDate = :orderCreationDate")

我尝试像这样构建查询:

public List<OrderHeader> findFromToday() {
    Date dateToday = new Date();
    TypedQuery<OrderHeader> query = em.createNamedQuery("OrderHeader.findByOrderCreationDate", OrderHeader.class).setParameter("orderCreationDate", dateToday);
    return query.getResultList();
}

当然,ResultList是空的,因为日期和时间必须匹配。

不幸的是我需要在我的数据库中使用时间,因此orderCreationDate需要保留日期时间/时间戳。

那么如何查询特定日期,忽略时间?

谢谢!

1 个答案:

答案 0 :(得分:0)