我如何獲得記錄,前4個字符'匹配我的字符串使用HQL?HQL字符串左
這是我的HQL語句:
Query query = HibernateUtil.getSessionFactory().getCurrentSession().createQuery("from User where substring(user, 4) like :user");
query.setParameter("user", "John");
它返回什麼。但是,如果我在MySQL中重用SQL語句並將「substring」一詞更改爲LEFT
,那麼它將返回大量記錄。
我也試着與我的HQL「左」代替「子」,但它給了我這個錯誤,當我做:
org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: LEFT
你嘗試'substring(user,1,4)like:user'? HQL中的 –
您不允許使用mysql函數。所以,最好使用本機sql。即:https://stackoverflow.com/questions/8648787/how-to-implement-mysql-date-sub-function-in-hibernate-3-0 –