[英]Trouble converting SQL Query into JPQL (Eclipselink)
Hey guys, I have the following query and for the life of me I can't seem to translate it into JPQL. 大家好,我有以下查询,为了我的生命,我似乎无法将其转换为JPQL。 The working SQL is:
有效的SQL是:
select * from TB_PRINT_DETAIL y inner join
(select JOB_ID,max(COPY_NUM) MAX_COPY_NUM from TB_PRINT_DETAIL group by JOB_ID ) x
on y.JOB_ID = x.JOB_ID and y.COPY_NUM = x.MAX_COPY_NUM
My feeble attempt at translating it is as follows: 我对此的微弱尝试如下:
select o from PrintDetailEntity o inner join (select o2.jobId, max(o2.copyNumber) as
maxCopyNum from PrintDetailEntity o2 group by o2.jobId ) as x on o.jobId = o2.jobId and
o.copyNum = o2.maxCopyNum where o.printSuppressionReasonEntity is null
Thanks in advance for any light you can shine! 在此先感谢您能发出的任何光芒!
If I understand your query right (select entities that have the biggest copyNumber
among the entites with the same jobId
), the following should work: 如果我理解您的查询权限(在具有相同
jobId
实体中选择具有最大copyNumber
实体),则应该可以执行以下操作:
SELECT o
FROM PrintDetailEntity o
WHERE o.copyNumber =
(SELECT MAX(e.copyNumber) FROM PrintDetailEntity e WHERE o.jobId = e.jobId)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.