一尘不染

如何在JPQL(Spring JPA查询)中使用JOIN进行UPDATE语句?

hibernate

这是SQL中的JOIN问题更新语句的扩展,但是我尝试使用Spring Data JPQL。

我正在尝试将更新与JPQL中的JOIN一起使用,如下所示

@Modifying
@Query("UPDATE TotalValue tv JOIN LineItems li WHERE li.totalValue.totalValueId=:totalValuedId SET tv.totalAmount =sum(li.itemTotalValue) ")
void calculateTotalAmount(@Param("totalValuedId") Long totalValuedId);

但是,我得到如下错误

org.hibernate.hql.internal.ast.QuerySyntaxException:期望“设置”,找到“ JOIN”

JPQL中无法进行UPDATE和JOIN吗?有什么选择。谢谢


阅读 511

收藏
2020-06-20

共1个答案

一尘不染

JPQL语法似乎表明,一个JOIN实际上是不可能在一个UPDATE语句。

2020-06-20