Path expected for join!错误

一:

ExpertTreatment是多对一关系

hql语句:

String hql = "select new Map(t.treatment_Id as treatment_Id ,t.name as name,count(e.Treatment) as countTreatment) from Treatment t  left join Expert e on t.treatment_Id = e.treatment";

报错信息:

org.hibernate.hql.internal.ast.QuerySyntaxException: Path expected for join!

原因:hql不支持join语法。

二:

原因看了这博主:http://blog.csdn.net/mikyz/article/details/69397998

https://stackoverflow.com/questions/28234754/jpa-exception-path-expected-for-join


改hql成:(join Expert.Treatment)

String hql = "select new Map(t.treatment_Id as treatment_Id ,t.name as name,count(e.Treatment) as countTreatment) from Expert e right join Expert.Treatment t on t.treatment_Id = e.treatment";

还是报错:
ERROR:  Invalid path: 'null.Treatment'

再修改,成功:count(e.treatment),e.treatment

String hql = "select new Map(t.treatment_Id as treatment_Id ,t.name as name,count(e.treatment) as countTreatment) from Expert e right join e.treatment t on t.treatment_Id = e.treatment";


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值