【发布时间】:2013-12-06 12:55:01
【问题描述】:
如何在 Hibernate HQL 中表示以下 Oracle SQL。
select table_num
, room_id
, min(event_type) keep(dense_rank first order by changed_on desc)
from room_history
group by table_num, room_id;
查询背后的想法是按“changed_on”日期时间列对表“room_history”排序,然后按“table_num”和“room_id”对分组,同时为每个组保留第一个“event_type”。上述查询适用于 Oracle,但我无法将其转换为 HQL。
目的是为“table_num”和“room_id”对获取最新的“event_type”。
【问题讨论】:
-
这似乎是我似乎找不到合适的 HQL 语法来产生相同结果的问题。为什么我需要它作为 HQL 是因为我缩进在更大的查询中使用它,因此无法在我的应用程序端使用它。
-
您可以发布您尝试过的HQL,以便我们指出错误。
-
似乎 hql 中没有语法来实现这一点。找到了解决办法(见答案)
标签: java oracle hibernate hql sql-order-by