2011-09-18 68 views
0

我有兩個他們有多對多關係的實體。例如。 AENT和彎曲:
是否可以調用選定集合上的元素(?)?

class AEnt { 
    //.... 
    String name; 
    Set<BEnt> bs; 
} 

class BEnt { 
    //.... 
} 

我想選擇這樣的排架,他們的AEnts的名稱,如「財產以後」。我現在查詢是這樣的:

from BEnt b where b in 
    (select elements(a.bs) from AEnt a where a.name like :name) 

但問題是,Hibernate在所有AEnts,排架首先調用元素,實際上忽略了我的「喜歡」過濾器。因爲我有幾百萬個AEnt-BEnt關係,查詢變得沒有響應。是否有一種方法可以在選定的AE聲音集上調用元素?還是更好的查詢?
謝謝。

回答

0

我假設你已經在BEntAEnt參考 - 即一個多到一個,給你有AEntBEnt之間的一對一關係MANT。試試這個:

from BEnt b where b.a.name like :name 
相關問題