oracle系統為了實現完整的關聯式資料庫功能,系統專門提供了一組成為偽列(pseudocolumn)的資料庫列,這些列不是在建立物件時由我們完成的,而是在我們建立時由oracle完成的。那麼oracle的偽列以及偽表是怎麼樣的呢?接下來就為大家詳細講解oracle的偽列以及偽表。
oracle目前有以下偽列:
偽列:
currval and nextval 使用序列號的保留字
level 查詢資料所對應的級
rowid 記錄的唯一標識
rownum 限制查詢結果集的數量
1.rowid:
儲存表中每一行在記錄的實體地址,唯一可以標識表中的一行,插入記錄產生的。使用rowid可以快速的定位表中的某一行。(是一種資料型別,不可更改的,索引都是基於偽列的,使用rowid是查詢效率最高的一種方式)。
例如:select rowid,empno from scott.emp。
2.rownum:是查詢資料生成的,臨時的,通常分頁的時候用到。
例如:select * from (select rownum rn,t1.* from(select * from scott.emp order by empno desc)t1 where rownum>1*2)t2 where rn<=3*2。
偽表:
dual
該錶主要目的是為了保證在使用select語句中的語句的完整性而提供的。
mysql怎麼用偽表 Oracle偽列和偽表
oracle系統為了實現完整的關聯式資料庫功能,系統專門提供了一組成為偽列 pseudocolumn 的資料庫列,這些列不是在建立物件時由我 oracle的偽列以及偽表 oracle系統為了實現完整的關聯式資料庫功能,系統專門提供了一組成為偽列 pseudocolumn 的資料庫列,這些列不是在建立...
ORACLE中的偽列
oracle 中的偽列 偽列就像表中的列一樣,但是在表中並不儲存。偽列只能查詢。不能進行增刪改工作。rownum與rowid不同,rowid是插入記錄時生成,rownum是查詢資料時生成。rowid標識的是行的實體地址。rownum標識的是查詢結果中的行的次序。1.rowid 表中的每一行記錄都有乙...
Oracle的偽列說明
1 rownum是對結果集加的乙個偽列,即先查到結果集之後再加上去的乙個列 強調 先要有結果集 簡單的說 rownum 是對符合條件結果的序列號。它總是從1開始排起的。所以你選出的結果不可能沒有1,而有其他大於1的值,這是為什麼oracle的偽列rownum不支援 between.and,而都用 比...