<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ORACLE中用rownum分頁并排序的SQL語句

    以前分頁習慣用這樣的SQL語句:

    select * from

    (select t.*,rownum row_num from mytable t order by t.id) b

    where b.row_num between 1 and 10

    結果發現由于該語句會先生成rownum 后執行order by 子句,因而排序結果根本不對,后來在GOOGLE上搜到一篇文章,原來多套一層select 就能很好的解決該問題,特此記錄,語句如下:

    select * from

    (select a.*,rownum row_num from

    (select * from mytable t order by t.id desc) a

    ) b where b.row_num between 1 and 10

    posted on 2005-02-21 17:15 工作日志 閱讀(27922) 評論(14)  編輯  收藏 所屬分類: oracle相關
     
    Comments
    # re: ORACLE中用rownum分頁并排序的SQL語句
    謝謝,受益匪淺
    Posted @ 2006-11-08 08:19  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    it's great! your solution is the best one i have seen until now.thank u very much and reaaly appreciate you generation!
    Posted @ 2006-11-23 13:24  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    見識過了
    Posted @ 2007-09-12 11:37  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句[未登錄]
    恩 是正確的 我也這么寫的 不過速度不怎么地 這種寫法50W數據如果字段多的話要10多秒 不知哪位高手正點高效的
    Posted @ 2008-12-29 16:18  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    select * from

    (select a.*,rownum row_num from

    (select * from mytable t order by t.id desc) a
    where rownum<=10

    ) b where b.row_num >= 1
    Posted @ 2009-03-04 11:22  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    將select 后面的*再改寫為具體的column name,能好點!
    Posted @ 2009-09-04 17:17  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    @tang6704sadasd撒旦撒大大的撒
    Posted @ 2010-03-29 14:58  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    @wxy


    很對
    Posted @ 2010-06-27 12:11  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句[未登錄]
    其實你可以再試試,第一種根本不是按照rownum排序的
    Posted @ 2010-08-04 00:32  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句[未登錄]
    非常感謝。
    Posted @ 2011-07-10 17:12  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    @Sam
    呵呵
    Posted @ 2011-07-10 21:25  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    order字句可以直接用于
    select * from
    (
    select t.*,rownum row_num from mytable t order by t.id desc)

    ) where row_num between 1 and 10
    我怎么可以呢?剛剛測試了下
    Posted @ 2013-03-27 13:40  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    @榆戀蝶
    你的不可以的。你可以多做些數據,然后你會發現第一頁和第二的數據有什么區別
    Posted @ 2013-08-15 18:41  回復  更多評論    
    # re: ORACLE中用rownum分頁并排序的SQL語句
    @Ringer'
    這個其實是可以的 現在oracle10g已經可以了 并且無需在外面套那么多 一層也可以搞定
    Posted @ 2013-09-03 17:08  回復  更多評論    
     

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
     
    主站蜘蛛池模板: 成人免费视频88| 97公开免费视频| 免费人成视频x8x8入口| 亚洲老熟女五十路老熟女bbw| 高清免费久久午夜精品| 全黄性性激高免费视频| 国产AV无码专区亚洲AV琪琪| 国产成人3p视频免费观看| 亚洲精品无码久久久久牙蜜区| 免费看又黄又无码的网站| 久久久影院亚洲精品| 91大神免费观看| 亚洲免费一级视频| 国产成在线观看免费视频| 亚洲视频无码高清在线| 日韩免费一级毛片| 麻豆69堂免费视频| 亚洲国产精品成人| 任你躁在线精品免费| 亚洲欧洲国产精品久久| 免费观看理论片毛片| 成年网站免费入口在线观看| 亚洲国产另类久久久精品| 四虎成年永久免费网站| 久久乐国产综合亚洲精品| 亚洲av手机在线观看| 国产又大又长又粗又硬的免费视频| 亚洲六月丁香婷婷综合| 国产成人免费永久播放视频平台| 国产产在线精品亚洲AAVV| 亚洲精品乱码久久久久久按摩 | 99精品一区二区免费视频| 亚洲狠狠ady亚洲精品大秀| 免费无码AV电影在线观看| 亚洲成在人线av| 日本XXX黄区免费看| 美女视频黄a视频全免费网站色 | 国产亚洲国产bv网站在线| 免费国产怡红院在线观看| 亚洲电影免费在线观看| 亚洲日韩精品无码AV海量|