问题描述
下面是一个具有多个联接和条件的SQL查询,它提供了所需的输出,我想将以下查询转换为HQL
select * from customer c
join customer_geo_rel cg on c.id=cg.customer_id
join geography g on cg.geo_id=g.id
join geo_geo_hierarchy gghCluster on g.id = gghCluster.geo_id
join geo_geo_hierarchy gghdivision on gghCluster.geo_id = gghdivision.parent_geo_id
join role_data_rel rdr on gghCluster.geo_id = rdr.permission_data_id OR
gghdivision.parent_geo_id = rdr.permission_data_id OR
g.id=rdr.permission_data_id
解决方法
出什么问题了? HQL支持联接的ON子句,如果您使用的是Hibernate的旧版本,则可以使用WITH子句,例如.. join g.roleDataRelList rds on ...