文章目录
题目
正确答案:A. SELECT * FROM table_name WHERE ROWNUM <= 10;
扩展学习
ROWNUM 是什么?
ROWNUM 是 Oracle 中的伪列(pseudo-column),表示查询结果中每一行的顺序编号,是Oracle返回记录时临时赋值的。
在 Oracle 数据库中,伪列(Pseudo Column) 是一种看起来像是表中的列,但实际上并不存储在表中的数据项。它是由 Oracle 自动提供的,可以在 SQL 查询中使用,就像普通列一样,但它不是真正存在于表结构中的字段。
常见的伪列
伪列名 | 说明 | 示例 |
---|---|---|
ROWNUM | 查询结果的行号,从1开始编号 | SELECT * FROM emp WHERE ROWNUM <= 5; |
ROWID | 每一行在数据库中的唯一物理地址标识 | SELECT ROWID, ename FROM emp; |
LEVEL | 用于层次查询(CONNECT BY)中,表示当前层级 | SELECT LEVEL FROM DUAL CONNECT BY LEVEL <= 3; |
SYSDATE | 当前系统日期时间(其实更接近函数) | SELECT SYSDATE FROM DUAL; |
USER | 当前登录用户名 | SELECT USER FROM DUAL; |
举例:
SELECT ROWNUM, ename FROM emp;
这条语句会显示每一行的编号,编号就是 ROWNUM 给的,但这个字段在表结构里并没有定义,是 Oracle 查询的时候动态生成的。
在12c以后更加推荐使用
FETCH FIRST n ROWS ONLY
总结
伪列是Oracle自动提供的一种列,他不存在于表结构中,但存在于查询执行的过程中。运行时才临时存在的,只能用于当前查询语句中,不存入磁盘、不占表空间。
ROWNUM 是 Oracle 中的一个伪列,会将查询结果的行号,从1开始自动编号