Hibernate 如何在HQL中显式执行分页(或在from子句中执行子查询)

Hibernate 如何在HQL中显式执行分页(或在from子句中执行子查询),hibernate,subquery,hql,paging,Hibernate,Subquery,Hql,Paging,我已经阅读了中提到的所有问题,但在我的案例中没有一个是可能的解决方案 我有一个用HQL编写的非常复杂的查询,在索引列上有一个order by。当使用Hibernate的内置分页工具setFirstResult等时,除第一页返回外,任何页面都需要几秒钟才能返回第一页返回的位置 SELECT * FROM (SELECT row_.*, ROWNUM rownum_ FROM (<very complicated queries>) row_

我已经阅读了中提到的所有问题,但在我的案例中没有一个是可能的解决方案

我有一个用HQL编写的非常复杂的查询,在索引列上有一个order by。当使用Hibernate的内置分页工具setFirstResult等时,除第一页返回外,任何页面都需要几秒钟才能返回第一页返回的位置
SELECT  * 
FROM     (SELECT   row_.*, ROWNUM rownum_
          FROM     (<very complicated queries>) row_
          WHERE    ROWNUM <= 100000) row2_
WHERE    rownum_ > 99990
driverTable.id in 
 (SELECT   x.i
  FROM     (SELECT   z.i, ROWNUM r
            FROM     (SELECT     A.ID i
                      FROM       DrivingTable a
                      ORDER BY   A.ID DESC) z) x
  WHERE    x.r BETWEEN :page * 100 + 1 AND :page * 100 + 100)