如何在 JPQL(Spring JPA 查询)中使用 JOIN 执行更新语句?

How can I do an UPDATE statement with JOIN in JPQL (Spring JPA Queries)?

这是这个问题的扩展 Update Statement with JOIN in SQL 但我正在尝试使用 Spring Data JPQL。

我正尝试在 JPQL 中使用 Update 和 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: expecting "set", found 'JOIN'

在 JPQL 中不能进行 UPDATE 和 JOIN 吗?有什么选择。谢谢

JPQL syntax 似乎表明 JOIN 在 UPDATE 语句中实际上是不可能的。