我试图执行一个HQL
查询,它将来自两个对象的数据组合起来:Person
和PersonRoleAssociation
。HQL多表选择 - 外部加入?
我正在运行Hibernate
4.3.10和Grails
3.0.10。
我当前的查询看起来是这样的:
SELECT person
FROM Person person,
PersonRoleAssociation personRoleAssoc
WHERE personRoleAssoc.person = person
从我的理解,这是相当于一个标准SQL
内左加入。这适用于大多数情况,但我也需要查询缺少PersonRoleAssociation
的所有Persons
,并且因为上述查询是左连接,所以我遇到了问题。
在标准SQL
我只是使用左外连接,但我找不到任何等效HQL
。
如何在不改变我的对象结构的情况下执行HQL
中外连接的等效操作?
您是否将PersonRoleAssociation映射为Person实体中的OneToMany关系? –
@MaciejKowalski不,我听说在Grails中有OneToMany关系可能会很慢,所以我试图避免它。 –