我需要編寫查詢。這是一個簡化的問題: 有名籃子。有水果(0或更多)。籃子有業主(1個或更多)。水果也有業主(1個或更多)。我想得到喬的籃子裏喬的水果名單,包括喬的籃子裏沒有喬的水果。在這裏,我們去:HQL - 2條件下的外連接
select basket.name, fruit.name from Owner owner
join owner.baskets basket
left outer join basket.fruits fruit WITH OWNER in (FRUIT.OWNERS)
where owner.id = joe_id
但是...它不起作用的HQL。它看起來不錯。在SQL中很簡單。
所以,問題是: 我怎麼能參加更多的則一個條件在HQL或標準API (使用Hibernate 3.3)。
我需要分頁,所以我以後不能提取空籃子,因爲我不能計算哪些項目應放在哪些頁面上。我目前的解決方案是一個本地查詢,但必須有一種方法...
從休眠實際的錯誤信息將是最有幫助這裏... – digitaljoel
我找不到例如堆棧跟蹤任何地方,但它說,這個查詢不正確,因爲WITH子句結合查詢AST的兩個不同的分支條件樹,或沿着這條線的東西。無論如何,如果兩個條件都與同一個對象相關,那麼WITH子句就可以工作:''將left join cat.kittens as * kitten * with * kitten * .bodyWeight> 10.0'(來自hibernate文檔的示例)。其實,無論何時我需要使用WITH,它都不起作用;) – mabn