对于ms sqlserver数据库中可以直接使用top(n)提取前N 个结果,而oracle中并不能直接使用的。oracle中提供了对于提取前N 条的结果的方法 那就是用行编号
例如:select [column_list],ROWNUM
from (
select [column_list]
from table_name ORDER BY top-n_column )
where ROWNUM <= N;
通过改变where中的rownum的范围,可以提取自己想要的行数(例如前三条,后三条,中间几条)
注意:除非进行top-n分析 否则不要在子查询中使用 order by 。
oracle 中top-n的使用,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/zjf4911/p/3722062.html