首页 > 解决方案 > 参数值 [100] 与预期类型不匹配 [java.time.LocalDateTime (n/a)]

问题描述

我在一个查询中遇到了奇怪的问题

select * from sbill.act_sub_t where (act_sub_t.unsub_dt - 
act_sub_t.sub_dt) < 100;

使用此查询,我在 oracle sql 开发人员工具中得到结果,但面临以下 java 问题。

 Parameter value [100] did not match expected type 
 [java.time.LocalDateTime (n/a)]

下面是java代码

  Query query1 = entityManager.createQuery("select * from ActSubT 
  where (ActSubT.unsub_dt - ActSubT.sub_dt) <:days").setParameter("days", 
   100);

标签: oraclehibernatejpacreatequery

解决方案


你能试试吗TO_DATE()

select * from sbill.act_sub_t 
where (TO_DATE(act_sub_t.unsub_dt, 'YYYY-MM-DD') - TO_DATE(act_sub_t.sub_dt, 'YYYY-MM-DD')) < 100;

推荐阅读