在HQL中无需关联即可加入

nim*_*cap 38 hibernate join hql

可以说我有两张桌子(A,B),如:

A {id, a, c}
B {id, b, c}
Run Code Online (Sandbox Code Playgroud)

我也有他们的实体.我想编写一个HQL,以便结果集就像(其中Ac = Bc):

(a1, b1, c1)
(a2, b2, c2)
(a3, b3, c3)
...
Run Code Online (Sandbox Code Playgroud)

由于onhibernate不支持子句,我被卡住了,我不知道如何编写查询.

Il-*_*ima 49

您必须使用交叉连接表示法:

from A as table_a , B as table_b
where table_a.c = table_b.c
Run Code Online (Sandbox Code Playgroud)

当然,没有办法以这种方式实现外连接,所以如果你的情况可能会有一些麻烦.

对于具有标准的类似情况,请参考:hibernate-criteria-joining-table-without-a-mapped-association