您的位置:首页 > 数据库 > Oracle

oracle学习笔记(7)_伪列

2013-08-20 18:30 190 查看
Oracle 中的伪列

Oracle 的表的使用过程中,实际表中还有一些附加的列,称为伪列。伪列就像表中 的列一样,但是在表中并不存储。伪列只能查询,不能进行增删改操作。

1.ROWID

ROWID 伪列返回的就是该行的物理地址。使用 ROWID 可以快速的定位表中的某一行。

SELECTROWID,ENAME FROM EMP WHERE SAL>2000;




2.ROWNUM

在查询的结果集中,ROWNUM 为结果集中每一行标识一个行号,通过 ROWNUM 伪列可以限制查询结果集中返回的行数。

 

说明:ROWNUM 与 ROWID 不同,ROWID 是插入记录时生成,ROWNUM 是查询数据时生成。

ROWID 标识的是行的物理地址。ROWNUM 标识的是查询结果中的行的次序。 

(1)查询出员工表中前 5 名员工的姓名,工作,工资。
SELECTROWNUM,ENAME,JOB,SAL FROM EMP WHEREROWNUM<=5;
(2)查询出工资最高的前 5 名员工的姓名、工资和工资。
SELECTROWNUM,T.* FROM  (SELECT ENAME,JOB,SAL FROM EMP ORDERBY SAL DESC) T WHEREROWNUM<=5;
(3)查询出表 EMP 中第 5 条到第 10 条之间的记录。
SELECT * FROM     (SELECTROWNUM R,ENAME,JOB,SAL FROM EMP WHEREROWNUM<=10) WHERE R>5 ;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: