在oracle数据库中如何查询出第N条到N+3条数据

 我来答
龙氏风采
推荐于2017-08-21 · 知道合伙人互联网行家
龙氏风采
知道合伙人互联网行家
采纳数:5849 获赞数:12817
从事互联网运营推广,5年以上互联网运营推广经验,丰富的实战经

向TA提问 私信TA
展开全部
楼上的答案肯定不对, 因为 rownum 伪列是 sql 语句查询结果集的编号, 如果有数据被查出来那么 rownum 一定是从 1 开始的, 不可能从 3 开始, 所以select * from table
where rownum between n and n+3 永远返回零条记录。

正确的做法:

select * from table where rownum <= n+3 minus select * from table where rownum <3;
ba5ham
2012-06-15 · TA获得超过8834个赞
知道大有可为答主
回答量:2673
采纳率:0%
帮助的人:2540万
展开全部
楼上的答案肯定不对, 因为 rownum 伪列是 sql 语句查询结果集的编号, 如果有数据被查出来那么 rownum 一定是从 1 开始的, 不可能从 3 开始, 所以select * from table
where rownum between n and n+3 永远返回零条记录。

正确的做法:

select * from table where rownum <= n+3 minus select * from table where rownum <3;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ykai229
2012-06-15 · TA获得超过151个赞
知道答主
回答量:158
采纳率:0%
帮助的人:94.4万
展开全部
select * from table where rownum <= n+3 minus select * from table where rownum <n;嗯,貌似是这样的,后面写n 不写3.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
laji11laji
2012-06-15 · 超过24用户采纳过TA的回答
知道答主
回答量:103
采纳率:100%
帮助的人:76.8万
展开全部
select * from table
where rownum between n and n+3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
忆似血中剑
2012-06-15 · TA获得超过275个赞
知道小有建树答主
回答量:556
采纳率:0%
帮助的人:253万
展开全部
二楼的童鞋回答的是对的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式