0
我寫過一個查詢,如果在MySql Workbench中使用,那麼它將很好地工作,但如果在我的Java EE項目中使用它,則不會編譯!Java EE沒有使用IN運算符編譯查詢
這裏的查詢:
@NamedQuery(name = "Book.findByCourse", query = "SELECT b FROM Book b WHERE b.teaching IN (SELECT T.id FROM Teaching T, Course C WHERE T.course = C.id AND C.id = :course)")
查詢工作正常,但我已經在我的Java EE項目得到這個錯誤:
錯誤編譯查詢[...],行0,第0列:無效的IN表達式參數[SubqueryNode Left:null Right:null],類型爲[entity.Teaching]的預期參數。
它有什麼問題?
對不起,請問:你是否已經定義了'Teacher'實體? – adarshr
我已經完成了所有實體:) – StepTNT
如果用常數值或'?'(問號字符)替換':course',查詢是否會編譯? –