我希望能够在hql中对以下内容进行建模:
select
people0_.NameFirst as col_1_0_,
people0_.NameLast as col_2_0_,
link1_.LinkValue as col_4_0_
from
people people0_
left outer join
peoplelinks peoplelink1_
on (people0_.PersonID=link1_.PersonID and link1_.LinkTypeID=1)
;
这是更大的SQL查询的一部分,我只想返回所有人,无论他们是否有一个链接类型为1的人与他们相关联。这个人可能有一个与他们不同类型的链接,这就是为什么我不能简单地做
select
people0_.NameFirst as col_1_0_,
people0_.NameLast as col_2_0_,
link1_.LinkValue as col_4_0_
from
people people0_
left outer join
peoplelinks peoplelink1_
on people0_.PersonID=link1_.PersonID
where
link1_.LinkTypeID=1
;
有没有办法在hibernate中编写第一个查询?
答案 0 :(得分:0)
想出来,hql有一个with关键字。所以这可以通过以下方式完成:
left outer join p.links l with l.linktypes.linkTypeId = :link_type_variable