Oracle實(shí)現(xiàn)分頁(yè)查詢(xún)的SQL語(yǔ)法匯總
本文實(shí)例匯總了Oracle實(shí)現(xiàn)分頁(yè)查詢(xún)的SQL語(yǔ)法,整理給大家供大家參考之用,詳情如下:
1.無(wú)ORDER BY排序的寫(xiě)法。(效率最高)
經(jīng)過(guò)測(cè)試,此方法成本最低,只嵌套一層,速度最快!即使查詢(xún)的數(shù)據(jù)量再大,也幾乎不受影響,速度依然!
sql語(yǔ)句如下:
SELECT * FROM (Select ROWNUM AS ROWNO, T.* from k_task T where Flight_date between to_date('20060501', 'yyyymmdd') and to_date('20060731', 'yyyymmdd') AND ROWNUM <= 20) TABLE_ALIAS WHERE TABLE_ALIAS.ROWNO >= 10;
2.有ORDER BY排序的寫(xiě)法。(效率最高)
經(jīng)過(guò)測(cè)試,此方法隨著查詢(xún)范圍的擴(kuò)大,速度也會(huì)越來(lái)越慢!
sql語(yǔ)句如下:
SELECT * FROM (SELECT TT.*, ROWNUM AS ROWNO FROM (Select t.* from k_task T where flight_date between to_date('20060501', 'yyyymmdd') and to_date('20060531', 'yyyymmdd') ORDER BY FACT_UP_TIME, flight_no) TT WHERE ROWNUM <= 20) TABLE_ALIAS where TABLE_ALIAS.rowno >= 10;
3.無(wú)ORDER BY排序的寫(xiě)法。(建議使用方法1代替)
此方法隨著查詢(xún)數(shù)據(jù)量的擴(kuò)張,速度會(huì)越來(lái)越慢!
sql語(yǔ)句如下:
SELECT * FROM (Select ROWNUM AS ROWNO, T.* from k_task T where Flight_date between to_date('20060501', 'yyyymmdd') and to_date('20060731', 'yyyymmdd')) TABLE_ALIAS WHERE TABLE_ALIAS.ROWNO <= 20 AND TABLE_ALIAS.ROWNO >= 10; TABLE_ALIAS.ROWNO between 10 and 100;
4.有ORDER BY排序的寫(xiě)法.(建議使用方法2代替)
此方法隨著查詢(xún)范圍的擴(kuò)大,速度也會(huì)越來(lái)越慢!
sql語(yǔ)句如下:
SELECT * FROM (SELECT TT.*, ROWNUM AS ROWNO FROM (Select * from k_task T where flight_date between to_date('20060501', 'yyyymmdd') and to_date('20060531', 'yyyymmdd') ORDER BY FACT_UP_TIME, flight_no) TT) TABLE_ALIAS where TABLE_ALIAS.rowno BETWEEN 10 AND 20;
5.另類(lèi)語(yǔ)法。(有ORDER BY寫(xiě)法)
該語(yǔ)法風(fēng)格與傳統(tǒng)的SQL語(yǔ)法不同,不方便閱讀與理解,為規(guī)范與統(tǒng)一標(biāo)準(zhǔn),不推薦使用。此處貼出代碼供大家參考之用。
sql語(yǔ)句如下:
With partdata as( SELECT ROWNUM AS ROWNO, TT.* FROM (Select * from k_task T where flight_date between to_date('20060501', 'yyyymmdd') and to_date('20060531', 'yyyymmdd') ORDER BY FACT_UP_TIME, flight_no) TT WHERE ROWNUM <= 20) Select * from partdata where rowno >= 10;
6.另類(lèi)語(yǔ)法 。(無(wú)ORDER BY寫(xiě)法)
With partdata as( Select ROWNUM AS ROWNO, T.* From K_task T where Flight_date between to_date('20060501', 'yyyymmdd') and To_date('20060531', 'yyyymmdd') AND ROWNUM <= 20) Select * from partdata where Rowno >= 10;
相信本文所述代碼能夠?qū)Υ蠹矣幸欢ǖ膮⒖冀梃b價(jià)值。
相關(guān)文章
oracle數(shù)據(jù)庫(kù)查詢(xún)所有表名和注釋等
這篇文章主要給大家介紹了關(guān)于oracle數(shù)據(jù)庫(kù)查詢(xún)所有表名和注釋等的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用oracle具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-04-04修改Oracle字符集為UTF-8解決中文亂碼問(wèn)題
這篇文章主要介紹了修改Oracle字符集為UTF-8解決中文亂碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12PLSQL?Developer13.0.4最新注冊(cè)碼和使用教程詳解
PL/SQL?Developer?13是一個(gè)集成開(kāi)發(fā)環(huán)境,專(zhuān)門(mén)用于開(kāi)發(fā)?Oracle?數(shù)據(jù)庫(kù)的存儲(chǔ)程序單元。這篇文章主要介紹了PLSQL?Developer13.0.4注冊(cè)和使用教程,需要的朋友可以參考下2021-12-12oracle11g 最終版本11.2.0.4安裝詳細(xì)過(guò)程介紹
這篇文章主要介紹了oracle11g 最終版本11.2.0.4安裝詳細(xì)過(guò)程介紹,詳細(xì)的介紹了每個(gè)安裝步驟,有興趣的可以了解一下。2017-03-03oracle數(shù)據(jù)庫(kù)定時(shí)任務(wù)dbms_job的用法詳解
這篇文章給大家詳細(xì)介紹了dbms_job的用法,用于安排和管理作業(yè)隊(duì)列,通過(guò)使用作業(yè),可以使ORACLE數(shù)據(jù)庫(kù)定期執(zhí)行特定的任務(wù)。有需要的朋友們可以參考借鑒。2016-09-09Oracle?function函數(shù)返回結(jié)果集的3種方法
工作中常需要經(jīng)過(guò)一段復(fù)雜邏輯處理后,得出的一個(gè)結(jié)果集,所以這篇文章主要給大家介紹了關(guān)于Oracle?function函數(shù)返回結(jié)果集的3種方法,需要的朋友可以參考下2023-07-07Oracle 解決ORA-00257 Archiver error 報(bào)錯(cuò)問(wèn)題解決
訂單投資交易環(huán)境進(jìn)行 impdb 數(shù)據(jù)泵恢復(fù)數(shù)據(jù),執(zhí)行到一半,報(bào)錯(cuò)終止,歸檔策略保留時(shí)間較長(zhǎng),或歸檔頻率過(guò)高,導(dǎo)致數(shù)據(jù)庫(kù)掛載盤(pán)符空間不足,本文給大家分享Oracle 解決ORA-00257 Archiver error 報(bào)錯(cuò)問(wèn)題解決,感興趣的朋友一起看看吧2023-12-12CentOS7下Oracle19c rpm安裝過(guò)程
這篇文章主要介紹了CentOS7下Oracle19c rpm安裝過(guò)程,包含環(huán)境配置、依賴(lài)安裝問(wèn)題,對(duì)Oracle19c rpm安裝相關(guān)知識(shí)感興趣的朋友一起看看吧2021-07-07實(shí)現(xiàn)oracle數(shù)據(jù)庫(kù)字段自增長(zhǎng)(兩種方式)
這篇文章主要通過(guò)兩種方式實(shí)現(xiàn)oracle數(shù)據(jù)庫(kù)字段自增長(zhǎng),第一種方式是序列+觸發(fā)器,第二種方式序列+顯示調(diào)用序列,需要的朋友可以參考下2015-07-07oracle?mysql?拼接值遇到的坑及雙豎線?||?concat詳解
在Oracle中,字符串拼接有兩種方法,分別是CONCAT()函數(shù)和“||”拼接,本文給大家講解oracle?mysql?拼接值遇到的坑及雙豎線?||?concat詳解,感興趣的朋友跟隨小編一起看看吧2023-04-04