我在我的项目中使用Hibernate和JPA。我使用下面的代码返回对象列表但是当我在mysql中使用sql时它返回空列表它正常工作。
Query query=entityManager.createNativeQuery("select tools.* from tools where (SELECT DATEDIFF(:user_date,calibDate) AS DiffDate) < :diff",Tools.class);
query.setParameter("user_date",userDate);
query.setParameter("diff",day);
return query.getResultList();
任何人都可以帮助发现问题所在?
答案 0 :(得分:1)
您的查询应如下所示:
Query query=entityManager.createNativeQuery("select tools.* from tools where (SELECT DATEDIFF(:user_date,calibDate) AS DiffDate) < :diff",Tools.class);
query.setParameter("user_date",userDate, TemporalType.DATE);
query.setParameter("diff",day);
return query.getResultList();
TemporalType.DATE应添加到&#39; user_date&#39;参数