HQL Hibernate嵌套连接

时间:2013-01-22 00:53:40

标签: hibernate join hql

我有以下参照约束设置,以便:

Table A, Table B, Table C

A.bid = B.id
B.cid = c.id

我需要运行一个查询,该查询使用以下过滤器检索表A对象:

A.someCol = 'someVal' and C.someCol='someVal'

到目前为止,我已经能够想出这个。这将返回TableAObj,但TableCObj为null:

select new TableAObj(TableBObj,TableCObj)
from TableAObj as tao 
left join tao.TableBObj as tbo 
left join tbo.TableCObj as tco 
where tao.someCol = ? and tco.someCol = ?

我的查询丢失了什么?

感谢。

1 个答案:

答案 0 :(得分:0)

想出来。这是查询:

select from TableAObj where TableAOb.someCol = ? 
and TableAObj.TableBObj.TableCObj.someCol = ?

不需要重载的构造函数或显式联接。