Oracle 限定返回的结果集 -- ROW_NUMBER

-- Start

首先,我们准备一下测试数据。

CREATE TABLE TEST
(
  NAME VARCHAR2(20),
  BIRTHDAY DATE
);
INSERT INTO TEST VALUES ('张三', DATE '2014-12-14');
INSERT INTO TEST VALUES ('李四', DATE '2013-12-14');
INSERT INTO TEST VALUES ('王五', DATE '2012-12-14');
INSERT INTO TEST VALUES ('赵六', DATE '2011-12-14');

ROW_NUMBER 是一个分析函数,如果你还不知道什么是分析函数,也没有关系,照猫画虎就可以了。

SELECT * FROM ( 
  SELECT ROW_NUMBER() OVER(ORDER BY BIRTHDAY) AS RN, NAME, BIRTHDAY FROM TEST
) WHERE RN < 3;

-- 更多参见:Oracle SQL 精萃

-- 声明:转载请注明出处

-- Last Edited on 2015-06-23

-- Created by ShangBo on 2014-12-14

-- End


你可能感兴趣的:(oracle,sql)