fomat日期的java JPA查询
在数据库中,createdDt存储的格式如下:
15-01-20 10:43:20.394000000 AM
我将“created”作为dd-mm-yyyy
我想从表中获取匹配的日期(不比较时间)
@Query("SELECT p FROM ABC p WHERE ( COALESCE(:created) is null or p.createdDt = :created) order by p.createdDt desc")
List<ABC> filterABC(@Param("created") Date created);
如何在查询中解析日期
# 1 楼答案
您可以尝试使用本机查询,使用特定的DBMS内容来提取日期部分
@Query(value = "SELECT * from ABC where DATE_FORMAT(createdDt, '%d-%m-%Y') = ?1", nativeQuery = true) List<ABC> filterABC(Date created);
日期格式是MySQL特有的功能。根据DBMS使用适当的日期函数