raj*_*raj 7 jpa window-functions spring-data-jpa
我需要根据另一列(绘图编号)获取一列(修订版)最大值。谁能告诉我此功能的 JPA 查询。
我编写了以下查询,但该查询不起作用。
请帮助我如何在 JPA 查询中编写 MAX 和 OVER (PARTITION BY) 函数。
@Query("select dr FROM
(SELECT MAX(dr.revision) over (PARTITION BY d.drawing_number) AS latest_revision
FROM DrawingRate dr
JOIN dr.drawing d
JOIN d.modifiedBy mb
WHERE mb.Id=:Id
OR piu.Id=:Id
ORDER BY d.localModifiedOn DESC NULLS LAST
) WHERE dr.revision = :latest_revision")
Run Code Online (Sandbox Code Playgroud)
运行此 Spring 数据 JPA 查询时不起作用,显示以下错误:
引起原因:java.lang.IllegalArgumentException:org.hibernate.hql.internal.ast.QuerySyntaxException:意外标记:(第1行附近第16列[select dr from (select max(dr.revision) over (partition by d.drawing_number) ) AS last_enrolment_date 来自实体.DrawingRate dr join dr.drawing d JOIN d.modifiedBy mb left join dr.modifiedBy u WHERE mb.Id=:IdOR piu.Id=:Id order by d.localModifiedOn DESC NULLS LAST) WHERE dr.revision =:最新版本]
请帮助我如何在 JPA 查询中编写 MAX 和 OVER (PARTION BY) 函数。
| 归档时间: |
|
| 查看次数: |
7416 次 |
| 最近记录: |