Oracle分页 速度最快的分页 ---SQL语句解释

2014-11-24 18:42:20 · 作者: · 浏览: 0

rowid SQL语句解释


select * from mytable2 s1 where rowid in(select rid from(select rownum r1,rid from (select rowid rid from mytable2) where rownum<=10) where r1>=3) ;


select rownum r1,rid from (select rowid rid from mytable2) where rownum<=10 表示添加rownum字段 (rownum是oracle系统函数) 把上一步查出来的表作为内嵌表


rownum<=10 表示查询前10条记录


select rid from(select rownum r1,rid from (select rowid rid from mytable2) where rownum<=10) where r1>=1) rownum>=3 返回 rowid值


rownum>=3表示前面查询出来的10条记录不包括前3条记录


where rowid in 表示子查询中查询出来rowid的结果和mytable2中的rowid进行匹配