自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ORACLE ROWNUM語句的使用

數(shù)據(jù)庫 Oracle
ORACLE ROWNUM語句使我們經(jīng)常要用的語句,下文對ROWNUM語句的使用作了詳細(xì)的討論分析,如果您感興趣的話,不妨一看。

ORACLE ROWNUM語句相信大家都有一定的了解,下面就為您詳細(xì)介紹ORACLE ROWNUM語句的使用方法,希望能對您能有所幫助。

偽列(pseudocolumn)ROWNUM 中包含有當(dāng)前的行號。很多人在***次試圖返回表中中間某段記錄子集時,都會發(fā)現(xiàn)下面這種方法行不通:

select * from all_objects where rownum between 30 and 49;

這種寫法之所以行不通,是因為 ROWNUM 列只有在記錄被取出或過濾時才會應(yīng)用到記錄上。***行在被取出時會被拋出,因為它的 ROWNUM 是1。然后,下一行被取出;它也會被拋出,因為它是新的“1”,以此類推,直到所有的行都被使用。這個查詢不會返回任何記錄。解決方法是在看到30到50之間的記錄時必須先取出1到30行的記錄:

select * from all_objects where rownum <= 49;

然后,你可以將它作為一個子查詢并過濾掉開始點之前的所有記錄(注意我必須為“rownum”提供一個別名才能編譯):

select * from (select rownumr,all_objects.* from all_objects where rownum <=

49) t

where t.r >= 30;

為了保證它的效率,不妨對這個限制使用綁定變量。這將使用所有此類請求在字面上完全相同,從而消除了在每次請求不同的范圍求時重新解析查詢:

select * from (select rownumr,all_objects.* from all_objects where rownum <=:min) t
where t.r >= :max;
注意 ORACLE ROWNUM語句是在排序之后計算的,所以使用 ORDER BY 子句將得到新的記錄順序。然而,基于規(guī)則的優(yōu)化器用 ROWNUM 來“短路”查詢,并在 ROWNUM 子句被滿足時返回記錄給下一部分查詢。

Oracle的分頁查詢語句基本上可以按照本文給出的格式來進行套用。
 

 

 

【編輯推薦】

Oracle分頁查詢語句介紹

Oracle索引的類型

創(chuàng)建Oracle索引的方法

統(tǒng)方式實現(xiàn)JAVA連接oracle數(shù)據(jù)庫

C#連接Oracle數(shù)據(jù)庫查詢數(shù)據(jù)

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-04-29 16:06:47

Oracle rown

2011-05-19 14:29:49

Oraclerownum

2009-11-19 16:27:23

Oracle Rown

2010-04-16 16:41:53

rownum用法

2010-05-07 18:52:59

Oracle rown

2011-04-12 11:32:31

Oraclerownum用法

2009-05-25 10:00:01

Oraclerownumrowid

2010-04-08 11:11:16

Oracle查詢

2010-09-25 15:20:43

SQL遞歸語句

2010-10-27 15:03:47

Oracle with

2018-01-25 12:50:33

數(shù)據(jù)庫OracleROWNUM

2010-04-29 12:05:21

Oracle使用SQL

2010-11-18 09:19:10

Oracle循環(huán)語句

2010-11-18 17:08:44

Oracle使用SQL

2011-09-01 09:30:27

Oracle數(shù)據(jù)庫控制語句

2017-08-07 15:52:33

Oracleonnect by優(yōu)化

2010-04-13 15:04:16

Oracle優(yōu)化

2010-11-18 17:35:51

oracle時間加減

2010-11-18 13:32:12

Oracle分頁查詢

2010-11-18 11:08:30

oracle授權(quán)語句
點贊
收藏

51CTO技術(shù)棧公眾號