怎么从数据库中取第m条到第n条记录?

Blueion 2006-07-13 11:10:48
我知道取前n条记录是select * from table where rownum<n
但取第m条到第n条我写成select * from table where rownum<n and rownum>m 好像没有用阿
...全文
205 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
czbbbs 2006-07-14
  • 打赏
  • 举报
回复
select * from (select rownum rn,t1.*,t2.* from t1,t2 where t1.a=t2.a) where rn>=11 and rn <=20;
Blueion 2006-07-13
  • 打赏
  • 举报
回复
可以用。不过我要联合查几张表该怎么写呢
jametong 2006-07-13
  • 打赏
  • 举报
回复
建议使用分许函数来处理..

select col_list
from (
select col_list,row_number() over (order by order_list) rn
from table
where ....
)
where rn >= m and rn < n
lionant 2006-07-13
  • 打赏
  • 举报
回复
要第一行到第10行数据,然后我又要11行到21行地数据,就有点象分屏输出。谢谢!
方法一:
select * from tablename where rownum<=10; (取1-10行)

select * from tablename where rownum<=20
minus
select * from tablename where rownum<=10; (取11-20行)

方法二:
select * from (select rownum rn,tablename.* from tablename) where rn<10; (取1-10行)
select * from (select rownum rn,tablename.* from tablename) where rn>=11 and rn <=20; (取11-20行)
LinZhongBao 2006-07-13
  • 打赏
  • 举报
回复
可以这样写
SELECT A.*
FROM (SELECT ROWNUM num,T.* FROM TABELNAME T WHERE ROWNUM <n) A
WHERE A.num > m
Blueion 2006-07-13
  • 打赏
  • 举报
回复
也就是说做个嵌套查询 怎么写呢

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧