我們在我們的項目中使用hibernate。我們有一個需要左外連接的查詢。查詢如下:org.hibernate.queryexception意外的令牌與[
如何知道我在寫查詢時使用JPQL或HQL。
我有一個場景,我必須在查詢中實現左外連接。
所以我寫了'與'以及左外連接關鍵字。
但我得到以下異常:
org.hibernate.queryexception unexpected token with [
我閱讀了與HQL,但不支持JPQL。所以我有2個問題:
1)如何識別JPQL或HQL和我的項目中使用哪個版本? 2)如果'with'在JPQL中不受支持,那麼如何實現具有特定屬性值的兩個表之間的左外連接。
查詢如下:
select v.vId,v.vName,cur.code,con.dxId from
vanTb v, regionTb r, currencyTb cur, connTb con
where
v.vNum = r.vNum
and v.vCode = r.vCode
and v.vId = cur.vId
and v.vId *= con.vId
and con.dlId = 1234 and v.status=1
* = - 在Sybase>左外連接ASE數據庫。
而命名的查詢是:
select v.vId,v.vName,cur.code,con.dxId from vanTb v inner join v.regionTb r inner join
v.currencyTb left outer join v.connTb con with con.dlId = :DlId where vendor.status = 1
這裏regionTb,currencyTb和connTb和vanTb是實體Bean的名稱和vanTb.java有regionTb,currencyTb和connTb爲memeber變量。
ATLEAST發表您的查詢/代碼。所以我們可以告訴你如何繼續。 – Akshay