一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Oracle - Oracle實現分頁查詢的SQL語法匯總

Oracle實現分頁查詢的SQL語法匯總

2019-12-14 16:05shichen2014 Oracle

這篇文章主要介紹了Oracle實現分頁查詢的SQL語法,非常實用的功能,需要的朋友可以參考下

本文實例匯總了Oracle實現分頁查詢的SQL語法,整理給大家供大家參考之用,詳情如下:

1.無ORDER BY排序的寫法。(效率最高)

經過測試,此方法成本最低,只嵌套一層,速度最快!即使查詢的數據量再大,也幾乎不受影響,速度依然!

sql語句如下:

?
1
2
3
4
5
6
7
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排序的寫法。(效率最高)

經過測試,此方法隨著查詢范圍的擴大,速度也會越來越慢!

sql語句如下:

?
1
2
3
4
5
6
7
8
9
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.無ORDER BY排序的寫法。(建議使用方法1代替)

此方法隨著查詢數據量的擴張,速度會越來越慢!

sql語句如下:

?
1
2
3
4
5
6
7
8
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排序的寫法.(建議使用方法2代替)

此方法隨著查詢范圍的擴大,速度也會越來越慢!

sql語句如下:

?
1
2
3
4
5
6
7
8
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.另類語法。(有ORDER BY寫法)

該語法風格與傳統的SQL語法不同,不方便閱讀與理解,為規范與統一標準,不推薦使用。此處貼出代碼供大家參考之用。

sql語句如下:

?
1
2
3
4
5
6
7
8
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.另類語法 。(無ORDER BY寫法)

?
1
2
3
4
5
6
7
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;

相信本文所述代碼能夠對大家有一定的參考借鑒價值。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 催奶师小说 | 国产首页精品 | 91视频免费观看网站 | 5x社区在线观看直接进入 | 艾秋麻豆果冻传媒老狼仙踪林 | 天美传媒影视在线免费观看 | 91久久青青草原线免费 | 日韩成a人片在线观看日本 日韩不卡一区二区 | 免费99精品国产自在现线 | 四虎成人免费视频 | 夫妇交换小说 | 精品久久久久久久久久久 | 娇小8一12xxxx第一次 | 国产理论片在线观看 | 国产精品色爱综合网 | juliaann主妇疯狂 | 成人国产在线观看 | 国产探花在线观看 | 热久久天天拍天天拍热久久2018 | 被18号每天强行榨干acg | 亚洲 欧美 中文字幕 在线 | 亚洲天堂网站在线 | 国产精品精品 | 成年男女免费视频网站 | 国产精品色片 | 九九九国产视频 | 成人欧美一区二区三区白人 | 欧美一级片在线免费观看 | 久久综合狠狠综合狠狠 | 91麻豆精品激情在线观看最新 | 无套暴躁白丝秘书 | 日本护士撒尿xxxx欧美 | 小寡妇水真多好紧 | 免费福利资源站在线视频 | 男女视频在线观看 | 亚洲va久久久噜噜噜久久狠狠 | 奇米白色 | 青草国产 | 国产日韩精品欧美一区 | 色综合亚洲精品激情狠狠 | 香蕉国产人午夜视频在线观看 |