Oracle OpenJPA分页(setMaxResults/setFirstResult)
我遇到了与中描述的相同的问题 有一个解决方案,它将主键添加到sort子句中,我认为这是可以的,但是正确的分页应该由OpenJPA自己完成。我们使用OpenJPA2.1.1和Oracle 11g 我的解决方案是在OpenJPA中进行更改: 更改SQL语句生成。实际上,是以下几点导致了所描述的问题Oracle OpenJPA分页(setMaxResults/setFirstResult),oracle,paging,openjpa,Oracle,Paging,Openjpa,我遇到了与中描述的相同的问题 有一个解决方案,它将主键添加到sort子句中,我认为这是可以的,但是正确的分页应该由OpenJPA自己完成。我们使用OpenJPA2.1.1和Oracle 11g 我的解决方案是在OpenJPA中进行更改: 更改SQL语句生成。实际上,是以下几点导致了所描述的问题 SELECT * FROM (SELECT r.*, ROWNUM RNUM FROM ([my statement]) r WHERE ROWNUM <= 50) WHERE RNUM >
SELECT * FROM (SELECT r.*, ROWNUM RNUM FROM ([my statement]) r WHERE ROWNUM <= 50) WHERE RNUM > 25
我希望:
SELECT outer.* FROM (
SELECT ROWNUM rn, inner.* FROM
([my statement])
inner)
outer WHERE outer.rn > 25 AND outer.rn <= 50
为什么使用第一个?更好的表现?否则,第二个将是使用OpenJPA进行分页的正确方法
在OpenJPA中是否还有其他可能以正确的方式进行分页?如果使用分页,则应按唯一的排序列排序!我现在添加主键作为排序标准,它工作得非常完美