猿问

你好,请问下Oracle的分页是怎样分的?

我知道MySQL用的是limit关键字,但是Oracle是怎么样的呢?求具体解释!

浮云间
浏览 194回答 2
2回答

慕森王

SELECT * FROM(SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) AWHERE ROWNUM <= 40)WHERE RN >= 21其中最内层的查询SELECT * FROM TABLE_NAME表示不进行翻页的原始查询语句。ROWNUM <= 40和RN >= 21控制分页查询的每页的范围。主要就是靠oracle的伪列rownum来控制。

Qyouu

oracle使用rownum进行数据分页,类似于sqlserver的top,就是说从游标从那一行开始取数据,取多少条数据,原理都是一样的select * from (select A.*,ROWNUM RN from (select t *from table t) Awhere ROWNUM <=截止行where RN >开始行
随时随地看视频慕课网APP
我要回答