使用hibernate标准在组中Hibernate最后一条记录

时间:2016-04-06 12:40:44

标签: java mysql hibernate

我有一个包含以下字段的表:ID (unique),type, value and createddate

数据类型分别是uniqueidentifier,varchar和datetime。

示例数据:

ID   type  value createddate

ui1 field1 value1 2016-02-13 16:39:21.100

ui2 field1 value2 2016-02-20 18:00:00.100

ui3  field2 value3 2016-02-13 16:39:21.200

ui4  field2 value4 2016-02-20 18:00:00.200

我需要检索每种类型的最新值记录。

因此预期结果应如下:

ID  type value createddate

ui2  field1 value2 2016-02-20 18:00:00.100

ui4  field2 value4 2016-02-20 18:00:00.200

我希望执行sql查询。我需要hsql代码来实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

使用像这样的HQL查询

FROM Record r 
GROUP BY r.type 
HAVING r.createdDate >= ALL (
    SELECT r2.createdDate 
    FROM Record r2 
    WHERE r2.type = r.type
)