我有两张有亲子关系的桌子。
场景:对于一方的记录,PartyContact中可能没有记录或最多3条记录。
HQL 中的所需输出:如果partyContact中没有记录(可以使用加入完成),则
实施例 PARTY TABLE /数据对象
PARTYCONATCT TABLE /数据对象
问题是将党内联系中的这三个记录视为一个。
我的查询:
SELECT partyDO.firstName1,partyContactDO.contactTypeCd FROM PartyDO partyDO left outer join partyDO.listPartyContactDOList partyContactDO
where partyDO.id=1620
提前致谢
答案 0 :(得分:0)
您的问题出在实体结构上。
您可以通过两种方式获得结果:
第一个:
在Party实体中添加公式,如下所示:
<property name="partyContact" formula="
(select pc.id from partycontact pc where pc.fk_party = id limit 1"
type="string"></property>
所以当你运行你的查询时:
SELECT P FROM Party P
你将获得派对和第一个PartyContact
第二个:
在Party实体中添加PartyContact的集合。
所以当你运行你的查询时:
SELECT P FROM Party P
您可以获得PartyContact集合的第一个元素。