我有一个具有以下属性的表和 Java 实体:
通知
-ID
-范围
-活动
-用户
-创建时间
-readTime (null --> 新消息)
如何使用一条 JPQL 语句获取每个范围和活动的最新通知?由于 JPA(版本 1.0,没有可用的 Criteria API)不支持“SELECT TOP”或语句中的 LIMIT 运算符(仅通过实体管理器(em.setmax...))我找不到解决方案...有没有只用一个 JPQL 语句来完成这项任务的方法?使用原生 SQL 获取 LIMIT 或 TOP 无解……</p>
例子:
Notification 1
-Id:1
-scope:test
-activity:1
-user:user1
-cTime: 01.01.1999
Notification 2
-Id:2
-scope:test
-activity:1
-user:user1
-cTime: 02.02.2000
Notification 3
-Id:3
-scope:dev
-activity:2
-user:user1
-cTime: 01.01.1997
这应该返回:通知 2 和 3