Oracle分页

Oracle分页

select * from (
select rownum rn,a.* from table_name a where rownum <= x
//结束行,x = startPage*pageSize
)
where rn >= y; //起始行,y = (startPage-1)*pageSize+1

(1)>= y,<= x表示从第y行(起始行)~x行(结束行) 。

(2)rownum只能比较小于,不能比较大于,因为rownum是先查询后排序的,
例如你的条件为rownum>1,当查询到第一条数据,rownum为1,则不符合条件。
第2、3…类似,一直不符合条件,所以一直没有返回结果。
所以查询的时候需要设置别名,然后查询完成之后再通过调用别名进行大于的判断。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容