Oracle 查询前几条记录

1. 按照tname排序,查询前10条数据

  

select id,tname from (select id,name from student order by tname) where rownum<=10 ;

 

2. 查询第100-150条记录

  

  1. 最佳选择:利用分析函数

       row_number() over ( partition by col1 order by col2 )                               

  比如想取出100-150条记录,按照tname排序
  

 select tname,tabtype from (                               

     select tname,tabtype,row_number() over ( order by tname ) rn from tab                

) where rn between 100 and 150;

 

  2. 使用rownum 虚列

select tname,tabtype from (                    

      select tname,tabtype,rownum rn from tab where rownum <= 150                  

) where rn >= 100;

 

上一篇:mysql 按百分比 比例查询数据


下一篇:PostgreSQL/Oracle/Mysql查询最近12个月写法