<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  回復  更多評論    
     

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


    網站導航:
     
     
    主站蜘蛛池模板: 成人亚洲网站www在线观看| 日本免费v片一二三区| 亚洲欧美日韩综合俺去了| 久久99青青精品免费观看| 青青视频观看免费99| 亚洲无圣光一区二区| 一区二区免费在线观看| 午夜亚洲福利在线老司机| 一级日本高清视频免费观看| 亚洲国产一级在线观看| 巨胸喷奶水www永久免费| 免费看国产成年无码AV片| 亚洲天堂免费在线| 日韩激情无码免费毛片| 免费无码专区毛片高潮喷水 | 亚洲精品日韩一区二区小说| 成年私人影院免费视频网站| 亚洲欧洲日韩不卡| 日本免费网站视频www区| 亚洲最大的成人网| 久久精品免费电影| 亚洲天堂一区在线| 日本一道本高清免费| 中文字幕看片在线a免费| 亚洲精品免费视频| 永久中文字幕免费视频网站| 亚洲成人一级电影| 国产国产人免费视频成69大陆| 亚洲午夜精品一区二区公牛电影院| 91国内免费在线视频| 亚洲自偷精品视频自拍| 日韩a级毛片免费观看| 中文字幕免费在线视频| 亚洲三级在线视频| 免费成人激情视频| 狠狠热精品免费观看| 亚洲一区综合在线播放| 国产精品国产午夜免费福利看 | 美女黄频免费网站| 亚洲精品成人片在线播放| A在线观看免费网站大全|