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

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

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

    ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句

    以前分頁(yè)習(xí)慣用這樣的SQL語(yǔ)句:

    select * from

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

    where b.row_num between 1 and 10

    結(jié)果發(fā)現(xiàn)由于該語(yǔ)句會(huì)先生成rownum 后執(zhí)行order by 子句,因而排序結(jié)果根本不對(duì),后來(lái)在GOOGLE上搜到一篇文章,原來(lái)多套一層select 就能很好的解決該問(wèn)題,特此記錄,語(yǔ)句如下:

    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) 評(píng)論(14)  編輯  收藏 所屬分類(lèi): oracle相關(guān)
     
    Comments
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    謝謝,受益匪淺
    Posted @ 2006-11-08 08:19  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    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  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    見(jiàn)識(shí)過(guò)了
    Posted @ 2007-09-12 11:37  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句[未登錄](méi)
    恩 是正確的 我也這么寫(xiě)的 不過(guò)速度不怎么地 這種寫(xiě)法50W數(shù)據(jù)如果字段多的話要10多秒 不知哪位高手正點(diǎn)高效的
    Posted @ 2008-12-29 16:18  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    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  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    將select 后面的*再改寫(xiě)為具體的column name,能好點(diǎn)!
    Posted @ 2009-09-04 17:17  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    @tang6704sadasd撒旦撒大大的撒
    Posted @ 2010-03-29 14:58  回復(fù)  更多評(píng)論    
    # re: ORACLE中用rownum分頁(yè)并排序的SQL語(yǔ)句
    @wxy


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

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

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
     
    主站蜘蛛池模板: 亚洲AV无码专区日韩| 亚洲高清视频在线播放| 两个人看的www免费| 亚洲一区二区影院| 黄色成人网站免费无码av| 真正全免费视频a毛片| 亚洲人成亚洲人成在线观看| 四虎在线成人免费网站| 亚洲精品无码aⅴ中文字幕蜜桃| 亚洲成a人片在线观看国产| 99视频在线看观免费| 中文字幕亚洲码在线| 亚洲精品久久久www| 91九色老熟女免费资源站| 极品美女一级毛片免费| 中文字幕亚洲色图| 亚洲AⅤ无码一区二区三区在线 | 国内一级一级毛片a免费| 亚洲黄片手机免费观看| 国产成人亚洲合集青青草原精品| 亚洲国产一成久久精品国产成人综合| 久久国产色AV免费看| 人人爽人人爽人人片av免费| 亚洲成a人片在线观看中文!!!| 亚洲高清最新av网站| 无码中文字幕av免费放| 国产午夜无码精品免费看| 婷婷亚洲综合一区二区| 亚洲欧洲自拍拍偷午夜色| 中文字幕亚洲综合久久男男| 日韩在线视频免费看| **一级一级毛片免费观看| 国产男女爽爽爽免费视频 | 亚洲av日韩综合一区二区三区| 亚洲AV无码1区2区久久| 亚洲高清视频一视频二视频三| 免费看AV毛片一区二区三区| 亚洲免费在线视频观看| 日本免费在线中文字幕| 亚洲精品国产日韩无码AV永久免费网| 亚洲天然素人无码专区|