【发布时间】:2017-10-18 06:02:31
【问题描述】:
我有以下结构。不在一张桌子上,只是为了简单起见:
Press | Batch | Start time
-------------------------------------------------
PRESS_1 | 2051 | 2017-05-18T00:00:00
PRESS_1 | 2052 | 2017-05-19T00:00:00
PRESS_2 | 2053 | 2017-05-20T00:00:00
PRESS_2 | 2054 | 2017-05-16T00:00:00
PRESS_3 | 2055 | 2017-05-12T00:00:00
PRESS_3 | 2056 | 2017-05-18T00:00:00
PRESS_3 | 2057 | 2017-05-19T00:00:00
我想获得每台印刷机的最后一个计划批次。结果应该是:
Press | Batch | Start time
-------------------------------------------------
PRESS_1 | 2052 | 2017-05-19T00:00:00
PRESS_2 | 2053 | 2017-05-20T00:00:00
PRESS_3 | 2057 | 2017-05-19T00:00:00
但是,当我按新闻分组并且还想选择批次时。我有义务将批次放入“Group By”条款。
Select x.Press, x.Batch, max(x.StartTime)
From myTable x
Group by x.Press
如何使用 JPQL 实现这一点?
【问题讨论】:
-
@Veljko89 正如您在 PRESS_2 中看到的,情况并非总是如此。
-
这个问题已经在 SO 中被多次回答。请在发布问题之前尝试做一些研究。
-
@GiorgosBetsos 很难找到合适的词来谷歌这个。但是请保持帖子打开,因为这认为 JPQL 比您引用的重复帖子更受限制。此外,这种特殊情况的原理也不一样。
-
@GiorgosBetsos 请检查。我已经编辑了问题。
-
我认为您在帖子的原始版本中还提到了 SQL 解决方案。没关系,我会投票支持重新提出问题。