可以說我有兩個表(A,B),如:沒有加入協會的HQL
A {id, a, c}
B {id, b, c}
我也有自己的實體。我想寫一個HQL,使結果集就會像(其中AC = BC):
(a1, b1, c1)
(a2, b2, c2)
(a3, b3, c3)
...
由於on
條款不受休眠支持我堅持,我不知道如何編寫查詢。
可以說我有兩個表(A,B),如:沒有加入協會的HQL
A {id, a, c}
B {id, b, c}
我也有自己的實體。我想寫一個HQL,使結果集就會像(其中AC = BC):
(a1, b1, c1)
(a2, b2, c2)
(a3, b3, c3)
...
由於on
條款不受休眠支持我堅持,我不知道如何編寫查詢。
您必須使用交叉連接符號:
from A as table_a , B as table_b
where table_a.c = table_b.c
當然是沒有辦法實現這種方式外連接,所以你可能有一些麻煩,如果這是你的情況。
對於標準類似的情況是指:hibernate-criteria-joining-table-without-a-mapped-association,如果你想使外
加入可以使子查詢和管理或操作(我的作品)。 它使查詢更加複雜的和最差的高性能,但工作:-)
如果兩個表是通過外鍵相互關聯的,那麼你可以試試這個:
令:
A {ID (主鍵),a,c} B {id(外鍵),b,c}
在B類的pojo中定義了一個類型爲parent(A)的變量,其中包含setter和getter。通過這種方式。 讓它'AA'
select tbl_b.a,tbl_a.a,tbl_b.b,tbl_a.b,tbl_b.c,tbl_a.c from B tbl_b inner join tbl_b.AA tbl_b
@ II-BHIMA我可以在此場景中使用左外連接 – dom 2017-01-25 14:57:27