问题
i want to achieve the following in HQL -
select top n from table1 where table1.id IN (some select sub query)
i have found the setMaxResult(n) method, but it can only retrieve top n of the entire result.. but what i want to achieve is top n of each group...
Thanks...
回答1:
Here is JPQL you need:
select a from Employee a
where
(
select count(*) from Employee b
where
a.department = b.department and
a.salary <= b.salary
) <= 10
order by salary DESC
来源:https://stackoverflow.com/questions/4264528/hql-query-to-retrieve-top-n-from-each-group