oracle使用rownum做分页查询

 
select b.* from 
(
select t.*,rownum rr from v_view_forta t 
) b 
where b.rr  between 5 and 8 
order by b.rr

--1,13 表中group字段 
020801
020801
020801
0201
0105

0310
021201
021201
021201
0306

0306
0212
021301

-- 11,13 表中group字段 ,正确
0306
0212
021301
-- 5,8 表中group字段 正确
0105 
0310
021201
021201


select k.*,rownum rr from v_view_forta k 
where rownum between 2 and 6
-- 1,10
0101
0101
0104
0104
0105

0105
0110
011002
011002
011002

-- 2,6 结果集为空!!!

-- 这样写结果同上
/*select g.*,rownum rr from v_view_forta g 
where rownum>=3 and rownum<=10*/


select * from
(
select d.*,rownum rr from v_view_forta d 
) p 
where p.rr>=2 and p.rr<=7

--  1,10
020801
020801
020801
0201
0105

0310
021201
021201
021201
0306
 
-- 2,7  正确
020801
020801
0201
0105
0310
021201

/*结论:使用rownum做分页查询,必须将rownum放在子查询内!否则不起作用!!!*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值