首页 > 技术文章 > Oracle笔记

flower-bky 2020-07-24 18:47 原文

oracle分页rownum

oracle分页为物理分页,需要一次性把所有的数据查出来再进行分页
rownum是从1开始的(相当于行号)

select * from t_tts_handsel_record where rownum>0;-- 全部:1,2,3,4,5,6
select * from t_tts_handsel_record where rownum<3;-- 第1,2行
<num 显示结果集的前num行
select * from t_tts_handsel_record where rownum>3;-- 0条
what?!!!
因为 rownum 是在查询到的结果集后加上去的,简单的说 rownum 是对符合条件结果的序列号。它总是从1开始排起的。所以你选出的结果不可能没有1,而有其他大于1的值。所以得使用嵌套查询先把全部的结果查出来
select * from (select rownum as rn,t_tts_handsel_record.* from t_tts_handsel_record) where rn>3; -- (第4,5,6条)

转载:https://blog.csdn.net/qq_39196949/article/details/84379874

推荐阅读