我有这个问题:
PostgreSQL PG Admin中的这个查询正常工作:
SELECT *
FROM raport_das
where cast(raport_das.dataZawarcia as date) >= '2017-09-04%'
and cast(raport_das.dataZawarcia as date) <= '2018-09-04%'
and raport_das.status = 'umowa'
SELECT *
FROM raport_das
where raport_das.dataZawarcia >= '2017-09-04'
and raport_das.dataZawarcia <= '2018-09-04'
and raport_das.status = 'umowa'
但是在spring-boot中使用hibernate和这个方法:
String REPORT_BY_DATE_STATUS = "SELECT * FROM raport_das where raport_das.dataZawarcia >= ?1 and raport_das.dataZawarcia <= ?2 and raport_das.status = ?3";
@Async
@Query(value = REPORT_BY_DATE_STATUS, nativeQuery = true)
List<RaportDas> findByDateAndStatus(String dateFrom, String dateTo, String status);
我有这个错误:
错误:运算符不存在:date&gt; =字符变化。
没有运算符匹配给定的名称和参数类型。您可能需要添加显式类型转换。
我的实体使用java.util.Date
。但我也尝试使用sql.date,但也会出现同样的错误。