在oracle中替代sql server TOP

时间:2012-12-02 09:05:35

标签: oracle oracle10g

如何在oracle pl sql中获得前3条记录?我是oracle的新手,早些时候我使用过sql server。

我的要求是获得X列的前三个记录。

2 个答案:

答案 0 :(得分:1)

尝试此操作从查询中检索前N个记录,您可以使用以下语法:: -

 SELECT *
 FROM (your ordered query) alias_name
 WHERE rownum <= Rows_to_return

实施例: -

SELECT *
 FROM (select * from suppliers ORDER BY supplier_name) suppliers2
 WHERE rownum <= 3

答案 1 :(得分:0)

这可能对您有所帮助

SELECT ename, sal 
  FROM ( SELECT ename, sal, RANK() OVER (ORDER BY sal DESC) sal_rank
           FROM emp ) 
 WHERE sal_rank <= 3;
相关问题