我可以问我的JPQL语句是否包含任何错误?或者AND条件不能与LIKE语句一起使用?
public List searchByTime(String from, String to, String a){
Query q = em.createQuery("SELECT e FROM EnrollmentDetails e WHERE (e.startTime >= ?1 AND e.endTime <= ?2) AND (e.offerCode.offerCode LIKE: ?3)");
q.setParameter(1, from);
q.setParameter(2, to);
q.setParameter(3, a + "%");
List l = q.getResultList();
return l;
}
每当我删除AND (e.offerCode.offerCode LIKE: ?3)
和
q.setParameter(3, a + "%");
,然后声明是有效的,但没有结果我想要的。
我很确定我删除的2个语句是正确的,因为它们在其他函数中起作用。
只是在这个功能不起作用。任何人都可以帮助我。
谢谢你。答案 0 :(得分:0)
:
关键字后面有一个冒号LIKE
,这是非法的。 :
只能用作命名参数的一部分。删除它,它可能会起作用