2016-08-13 8 views
0

私のJPQLステートメントには何らかのエラーがありますか?または、AND条件がLIKEステートメントで動作しない可能性がありますか?JPQLはLIKE文とAND条件で動作します

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つのステートメントは、他の機能では正常であると確信しています。

この機能は動作していません。誰でも助けてくれますか?

ありがとうございました。

+3

なぜ「好き」ですか?コロン ':'は、名前付きパラメータが続くと考えているパーザを混乱させます。それに加えて、コロンがあることは違法です。 –

+0

私のエラーをデバッグするのに感謝します。私は目を休めるべきです。ありがとうございました。ハハ.... – helloworld1234

+0

@NeilStocktonあなたは答えとしてあなたのコメントを追加する必要があります。 –

答えて

0

無効なLIKEキーワードの直後にコロンがあります。:です。 :は、名前付きパラメータの一部としてのみ使用できます。それを取り除くと正常に動作します

関連する問題