日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

下列那些是oracle的伪列,oracle伪列

發布時間:2025/3/13 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 下列那些是oracle的伪列,oracle伪列 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在對表進行查詢時,我們可以對oracle提供的一系列偽列(pseudocolumns)進行查詢,這些偽列不存儲在表中,oracle不允許對偽列進行dml操作。

在oracle 10g和11g下,偽列包括如下內容:

lHierarchical Query Pseudocolumns

分級查詢是oracle提供的遞歸查詢語法,在這里不做展開。只有在分級查詢下,才可以使用以下偽列:

1.CONNECT_BY_ISCYCLE Pseudocolumn

2.CONNECT_BY_ISLEAF Pseudocolumn

3.LEVEL Pseudocolumn

lSequence Pseudocolumns

Sequence有以下2個偽列:

1.CURRVAL:返回當前sequence值

2.NEXTVAL:增加sequence并返回下一個值

一般用法:

sequence.CURRVAL

sequence.NEXTVAL

lVersion Query Pseudocolumns

Version Query偽列只有在Flashback Version Query時才有效,內容如下:

1.VERSIONS_STARTSCN and VERSIONS_STARTTIME

2.VERSIONS_ENDSCN and VERSIONS_ENDTIME

3.VERSIONS_XID

4.VERSIONS_OPERATION

lCOLUMN_VALUE Pseudocolumn

lOBJECT_ID Pseudocolumn

lOBJECT_VALUE Pseudocolumn

lORA_ROWSCN Pseudocolumn

lROWID Pseudocolumn

lROWNUM Pseudocolumn

lXMLDATA Pseudocolumn

在對普通表做查詢時,比較常用的偽列有:ORA_ROWSCN、ROWID、ROWNUM。

ORA_ROWSCN

雖然叫ORA_ROWSCN,不過默認情況下,查詢出的該值是從數據文件塊頭獲取的,也就是說,查詢出的是block的最近事務的scn,而不是精確到row的scn。

在創建表時,可以指定ROWDEPENDENCIES來使ora_rowscn真正記錄行一級的scn。

看一下ROWDEPENDENCIES的定義:Specify ROWDEPENDENCIES if you want to enable row-level dependency tracking. This setting is useful primarily to allow for parallel propagation in replication environments. It increases the size of each row by 6 bytes.

從這里也可以看出一個SCN占用的空間(6 bytes)。SCN的最大值是0xffff.ffffffff,共48位。包括2bytes的高位字節(SCN wrap)和4bytes的低位字節(SCN base)。

SQL>select ora_rowscn,username from t;

ORA_ROWSCN USERNAME

---------- ------------------------------

86516279 SYSTEM

86516279 SYS

86516279 OUTLN

86516279 LINCINQ

86516279 TEST

86516279 LINC

86516279 SPLEXUC

86516279 DIP

86516279 TSMSYS

86516279 WMSYS

86516279 DBSNMP

11 rows selected.

需要查詢scn對于的具體時間,可以用函數SCN_TO_TIMESTAMP

SQL> alter session set nls_timestamp_format='yyyy-mm-dd hh24:mi:ss';

Session altered.

SQL> select scn_to_timestamp(ora_rowscn),username from t;

SCN_TO_TIMESTAMP(ORA_ROWSCN)USERNAME

------------------------------ ------------------------------

2011-06-01 13:13:31SYSTEM

2011-06-01 13:13:31SYS

2011-06-01 13:13:31OUTLN

2011-06-01 13:13:31LINCINQ

2011-06-01 13:13:31TEST

2011-06-01 13:13:31LINC

2011-06-01 13:13:31SPLEXUC

2011-06-01 13:13:31DIP

2011-06-01 13:13:31TSMSYS

2011-06-01 13:13:31WMSYS

2011-06-01 13:13:31DBSNMP

11 rows selected.

ROWID

Rowid是基于64位編碼的18個字符,格式如下:

data_object_idfile_idblock_number row_number

OOOOOOFFFBBBBBBRRR

SQL> select rowid,username from t;

ROWIDUSERNAME

------------------ ------------------------------

AAAE0LAAOAABQqMAAA SYSTEM

AAAE0LAAOAABQqMAAB SYS

AAAE0LAAOAABQqMAAC OUTLN

AAAE0LAAOAABQqMAAD LINCINQ

AAAE0LAAOAABQqMAAE TEST

AAAE0LAAOAABQqMAAF LINC

AAAE0LAAOAABQqMAAG SPLEXUC

AAAE0LAAOAABQqMAAH DIP

AAAE0LAAOAABQqMAAI TSMSYS

AAAE0LAAOAABQqMAAJ WMSYS

AAAE0LAAOAABQqMAAK DBSNMP

11 rows selected.

通過dbms_rowid包,我們可以獲得rowid對應的記錄詳細信息。

SQL> select dbms_rowid.rowid_object('&1') data_object_id#,

2dbms_rowid.rowid_relative_fno('&1') rfile#,

3dbms_rowid.rowid_block_number('&1') block#,

4dbms_rowid.rowid_row_number('&1') row# from dual;

Enter value for 1: AAAE0LAAOAABQqMAAA

old1: select dbms_rowid.rowid_object('&1') data_object_id#,

new1: select dbms_rowid.rowid_object('AAAE0LAAOAABQqMAAA') data_object_id#,

Enter value for 1: AAAE0LAAOAABQqMAAA

old2:dbms_rowid.rowid_relative_fno('&1') rfile#,

new2:dbms_rowid.rowid_relative_fno('AAAE0LAAOAABQqMAAA') rfile#,

Enter value for 1: AAAE0LAAOAABQqMAAA

old3:dbms_rowid.rowid_block_number('&1') block#,

new3:dbms_rowid.rowid_block_number('AAAE0LAAOAABQqMAAA') block#,

Enter value for 1: AAAE0LAAOAABQqMAAA

old4:dbms_rowid.rowid_row_number('&1') row# from dual

new4:dbms_rowid.rowid_row_number('AAAE0LAAOAABQqMAAA') row# from dual

DATA_OBJECT_ID#RFILE#BLOCK#ROW#

--------------- ---------- ---------- ----------

19723143303800

ROWNUM

在對表的查詢中,每返回一條記錄,rownum偽列就返回一個數字,代表查詢返回的行的編號。

SQL> select rownum,username from t;

ROWNUM USERNAME

---------- ------------------------------

1 SYSTEM

2 SYS

3 OUTLN

4 LINCINQ

5 TEST

6 LINC

7 SPLEXUC

8 DIP

9 TSMSYS

10 WMSYS

11 DBSNMP

11 rows selected.

從下面的例子可以看出,rownum返回的是查詢過程中返回記錄的順序,并不是查詢結果的序列號。

SQL>select rownum,username from t order by username;

ROWNUM USERNAME

---------- ------------------------------

11 DBSNMP

8 DIP

6 LINC

4 LINCINQ

3 OUTLN

7 SPLEXUC

2 SYS

1 SYSTEM

5 TEST

9 TSMSYS

10 WMSYS

11 rows selected.

SQL> select rownum,username from (select username from t order by username);

ROWNUM USERNAME

---------- ------------------------------

1 DBSNMP

2 DIP

3 LINC

4 LINCINQ

5 OUTLN

6 SPLEXUC

7 SYS

8 SYSTEM

9 TEST

10 TSMSYS

11 WMSYS

11 rows selected.

總結

以上是生活随笔為你收集整理的下列那些是oracle的伪列,oracle伪列的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一二三区av| 裸体裸乳被免费看视频 | 亚洲欧美日韩综合在线 | 在线看黄网 | 丰满少妇乱子伦精品看片 | 色版视频在线观看 | 日韩精品高清在线观看 | 亚洲电影影音先锋 | 人操人操| 黄在线免费 | 中文字幕第15页 | 嫩草影院污 | 五月婷婷综合在线 | 香蕉网站在线观看 | 四虎永久免费在线观看 | 欧美成人精品三级网站 | 日日日人人人 | 波多野结衣一区在线 | 日本美女黄色一级片 | 亚洲美女黄色 | 看污网站 | 28一20岁女人一级 | av免费福利 | 91高清视频免费观看 | 亚洲精品一区二区在线 | 好爽快一点高潮了 | 本道综合精品 | 国产免费看av | 同性色老头性xxxx老头 | 成年精品 | 麻豆91精品| 日韩高清免费观看 | 天堂网在线最新版www中文网 | 萌白酱在线观看 | 黄视频国产 | 人日人视频 | 少妇人妻偷人精品无码视频 | 国产cao| 欧美jizz欧美性大全 | 黄色大片aaa | 亚洲色图15p | 污站在线观看 | 影音先锋在线国产 | 国产女人在线视频 | 老公吃小头头视频免费观看 | av观看网 | 亚洲美女综合 | 久久久久99精品成人片三人毛片 | 亚洲福利在线播放 | 久久久噜噜噜www成人 | 91精品在线观看入口 | 亚洲色图国产精品 | 波多野结衣一二三区 | 久久9精品区-无套内射无码 | 人妻丰满熟妇岳av无码区hd | 在线视频黄 | 色婷婷综合久久久久中文字幕 | 一级女性全黄久久生活片免费 | 特色黄色片 | 一本高清dvd在线播放 | 自拍偷拍国内 | 欧美国产免费 | h网站免费在线观看 | 国产成人av无码精品 | 久久一区二区三区精品 | 99久久精品无免国产免费 | 青青草在线视频免费观看 | 精品成人av一区二区三区 | 深夜福利院 | 东方成人av在线 | 中文字幕 日韩 欧美 | 亚洲综合无码一区二区 | www.亚洲天堂.com | 少女情窦初开的第4集在线观看 | 色xxxxxx| jlzzjizz在线播放观看 | 97在线免费视频观看 | 青娱乐在线免费视频 | 最近免费中文字幕 | 天堂在线观看av | 污视频软件在线观看 | 久久99国产综合精品免费 | 麻豆婷婷 | 爱久久 | 欧美一区二区三区影院 | 欧美操老女人 | 黄色短视频在线播放 | 国产黄色一级片视频 | 亚洲熟伦熟女新五十路熟妇 | 人妻在客厅被c的呻吟 | 18精品爽国产白嫩精品 | 日韩三区在线 | 久久精品国产免费 | 亚洲最大的成人网 | 少妇2做爰交换朴银狐 | 欧美三级久久 | 宅宅少妇无码 | 欧美日韩色综合 | 日韩一级大片 |