将sql转换为hql-hibernate
我有这两个sql脚本,我需要执行一些问题 hql中的翻译,用于来自JPA的查询:将sql转换为hql-hibernate,hibernate,Hibernate,我有这两个sql脚本,我需要执行一些问题 hql中的翻译,用于来自JPA的查询: SELECT f.idprovider, pe.name from provider f inner join person pe on(f.idperson = pe.idperson) inner join product_provider pf on(f.idprovider = pf.idprovider) inner join product p on(pf.idproduct = p.idprodu
SELECT f.idprovider, pe.name from provider f
inner join person pe
on(f.idperson = pe.idperson)
inner join product_provider pf
on(f.idprovider = pf.idprovider)
inner join product p
on(pf.idproduct = p.idproduct)
inner join item i
on(p.idproduct = i.idproduct)
where i.iditem = 1
SELECT f.idprovider, pe.name, pe.cnpjf from product_provider pf
inner join provider f
on(pf.idprovider = f.idprovider)
inner join coliseusys.person pe
on(f.idperson = pe.idperson)
inner join product p
on(pf.idproduct = p.idproduct)
where p.idproduct = (select p2.idproduct from item i inner join product p2
on(i.idproduct = p2.idproduct) where i.iditem = 1)
这些SQL也做同样的事情,我已经尝试了很多,从任何一个SQL中获取hql,但没有结果。
hibernate中的映射是正常的
有什么想法吗?翻译很快:
select f.id, pe.name from Provider f
inner join f.person pe
inner join f.products p
inner join p.items i
where i.id = :itemId
这是假设
- 提供程序与个人有toOne关联
- 提供程序使用联接表product\u提供程序与产品有许多关联
- 产品与商品有一个单一的关联
你应该读书。它有很多HQL查询的例子,并详细解释了它们是如何工作的。好的,伙计,谢谢你的关注。通过在产品中添加一个引用,该问题得以解决。对不起,我的英语不是很好