前端之家收集整理的这篇文章主要介绍了
oracle – 如何在Hibernate查询语言中执行左连接?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的HQL
查询,但它不起作用并且抛出
错误.
Hql查询:
- SELECT
- *
- FROM
- TABLEA A
- LEFT JOIN
- A.TABLEB B
- WHERE
- A.COLUMNNAME = B.COLUMNAME
它会导致此错误:
- org.hibernate.QueryException:
- This Query caught Exception. could not resolve property: of TABLEB:TABLEA.
我怎么解决这个问题?实际上我从多个表中检索了一个值.此查询不适用于CreateQuery(strQuery)
.
在HQL中,您只能将LEFT JOIN用于主实体中的
链接属性:
样品
EntityA有一个EntityB类型的对象实体B,所以你可以
- SELECT A FROM EntityA A LEFT JOIN A.entityB B WHERE ...
如果EntityA没有entityB属性但是EntityB有一个属性entityA,你不能这样写:
- SELECT A FROM EntityA LEFT JOIN EntityB B WHERE B.entityA = A
因为你有错误.这是一个尚未解决的Hibernate问题.