0

我有一种情况,需要从多个表中检索记录,并且根据条件标准,某些表可能没有记录例如:-

select *
from A a, B b, C c, D d, E e 
where a.CERT_REQUEST_ID = '' 
  and a.CERT_OBJ_RLT_CD = '' 
  and b.CERT_ID = a.CERT_OBJ_KEY_ID 
  and b.CERT_TRS_SEQ_NBR = a.CERT_TRS_SEQ_NBR 
  and b.CERT_TRS_SEQ_NBR = c.CERT_TRS_SEQ_NBR 
  and b.CERT_ID = c.CERT_ID 
  and c.CERT_OBJ_KEY_ID = d.CERT_OVERRIDE_ID 
  and e.CERT_WORDING_ID = c.CERT_OBJ_KEY_ID

表 E、D 可能没有上述标准的记录。所以在这种情况下,我还需要其他表的记录。

我可以通过左外连接来实现这一点,但 HQL 不支持连接,而且这些表也没有映射。那么,如何在 hql 中实现这一点。请帮忙

4

1 回答 1

0

HQL 确实支持连接(包括左连接):link

但是,如果未映射表,您将无法使用 HQL。

您可以通过createSQLQuery()在 SQL 中使用查询。

于 2012-11-22T09:36:19.893 回答