oracle取前几条数据语句
2个回答
展开全部
sqlserver中可以用top n 的方法,oracle中用
rownum,但如果只用
rownum会随机取数据,如果想按一定顺序取前几条数据
则可这样写:
select * from (select列 from 表 where 条件 order by列 desc) where rownum<列数
select * from (select rownum r ,* from test) tt
where tt.r 50 and tt.r <= 100; (最好用PLSQL游标来解决)
这样子写是会全表扫描的的,小的表不觉得会有多慢,数据量大了你就知道有多不好了,改成这样就不会了
rownum,但如果只用
rownum会随机取数据,如果想按一定顺序取前几条数据
则可这样写:
select * from (select列 from 表 where 条件 order by列 desc) where rownum<列数
select * from (select rownum r ,* from test) tt
where tt.r 50 and tt.r <= 100; (最好用PLSQL游标来解决)
这样子写是会全表扫描的的,小的表不觉得会有多慢,数据量大了你就知道有多不好了,改成这样就不会了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询