命名查询中的 HQL 错误
HQL Error in Named Query
我收到 Hibernate 的消息说我有一个 "Error in named query"。
下面是我要执行的 HQL 语句。
select sum(subtotal)
from (
select sum(coalesce(sum(t2.amount), 0) - coalesce(sum(t3.amount), 0)) subtotal
from submission t1
left join t1.bills t2
left join t1.payments t3
where t1.id = 10
group by t1.id
union
select sum(coalesce(sum(t2.amount), 0) - coalesce(sum(t3.amount), 0)) subtotal
from submission t1
left join t1.otherBills t2
left join t1.payments t3
where t1.id = 10
group by t1.id
) a1
我认为问题可能与外部查询中的 sum
函数或 union
运算符有关,但我无法缩小范围。
有没有人有什么想法?
您不能在 HQL 中的 From
子句之后使用子查询。我的建议是可以使用native query
。有关更多详细信息,您应该查看以下内容 link :-
Hibernate Query Limitation
休眠 does not support union
.
一项功能请求已开放十年。
我收到 Hibernate 的消息说我有一个 "Error in named query"。
下面是我要执行的 HQL 语句。
select sum(subtotal)
from (
select sum(coalesce(sum(t2.amount), 0) - coalesce(sum(t3.amount), 0)) subtotal
from submission t1
left join t1.bills t2
left join t1.payments t3
where t1.id = 10
group by t1.id
union
select sum(coalesce(sum(t2.amount), 0) - coalesce(sum(t3.amount), 0)) subtotal
from submission t1
left join t1.otherBills t2
left join t1.payments t3
where t1.id = 10
group by t1.id
) a1
我认为问题可能与外部查询中的 sum
函数或 union
运算符有关,但我无法缩小范围。
有没有人有什么想法?
您不能在 HQL 中的 From
子句之后使用子查询。我的建议是可以使用native query
。有关更多详细信息,您应该查看以下内容 link :-
Hibernate Query Limitation
休眠 does not support union
.
一项功能请求已开放十年。