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

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

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

    posts - 262,  comments - 221,  trackbacks - 0
    【1】方法一:通過dbms_random.random
    select * from (select * from largetable order by dbms_random.random) where rownum <= 20000;

    【2】方法二:通過dbms_random.value
    select * from (select * from largetable order by dbms_random.value) where rownum <= 20000;

    【3】方法三:通過采樣表掃描
    select * from (select * from largetable sample(10)) where rownum <= 20000;

    下面我們通過實踐來比較這3種方法的效率,首先我們創建一個包含有10W條記錄的表用于實驗:
    create table LARGETABLE
    (
      ID       
    NUMBER not null primary key,
      BIRTHDAY DATE 
    not null
    )

    接下來我們插入10W條數據
    create or replace procedure random_insert as
      i         
    number;
      startDate date :
    = sysdate;

    begin

      
    for i in 1 .. 100000 loop
        
    insert into largetable values (i, startDate + 1);
      
    end loop commit;

    end;

    在SQL*PLUS下設置顯示SQL語句執行時間:set timing on,讓后分別運行上述三條語句:

    第一個的執行時間為 00: 00: 16: 04
    第二個的執行時間為 00: 00: 54: 04
    第三個的執行時間為 00: 00: 08: 07

    從這里我們可以看出在進行數據隨機抽取時,采用sample的方法效率是最高的。為了保證每次隨機查詢的數據盡量不重復,我們可以把sample中的百分比提高一些(例如從10%提高到20%)。

    關于Oracle Sample的介紹和用法,請參考eygle他老人家的一篇文章介紹:如何從結果集中獲得隨機結果


    -------------------------------------------------------------
    生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。
    posted on 2008-06-09 17:41 Paul Lin 閱讀(1983) 評論(3)  編輯  收藏 所屬分類: Oracle 開發


    FeedBack:
    # re: 【原】Oracle開發專題之:隨機查詢
    2009-02-23 11:36 | wxf0701@gmail.com
    俺的測試結果跟你的很不一樣哦,你多次運行下看看  回復  更多評論
      
    # re: 【原】Oracle開發專題之:隨機查詢[未登錄]
    2009-03-19 15:29 | peter
    用sample代表取樣阿,我查詢時如果戴上查詢條件,如果用sample得到的查詢結果數量可能不對啊,多次查詢的數目不同?  回復  更多評論
      
    # re: 【原】Oracle開發專題之:隨機查詢
    2009-05-17 17:13 | 初學者
    看了大俠的oracle的博文,受益頗深。現有一問題想求,望復:
    在一個SQL語句中,進行表連接的最合適的表的個數是多少?例如,在一個sql語句中,涉及到了4張表連接。如果,一個sql語句涉及了10張表進行連接,是不是說明數據庫的表的設計有問題?那,一個什么樣的表連接數值才是合適的數據庫表的設計呢?

    謝謝。
    祝順利,健康。  回復  更多評論
      
    <2008年6月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    常用鏈接

    留言簿(21)

    隨筆分類

    隨筆檔案

    BlogJava熱點博客

    好友博客

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲图片一区二区| 亚洲精品成人片在线播放| 亚洲国产精品免费观看| 成年黄网站色大免费全看| 亚洲精品在线电影| 亚洲精品在线免费观看| 亚洲成人网在线观看| 久草视频免费在线| 亚洲av成人综合网| 成人性生交视频免费观看| 亚洲色偷偷综合亚洲av78| 午夜毛片不卡高清免费| 亚洲avav天堂av在线网毛片| 免费一看一级毛片| 国产精品免费在线播放| 久久99国产亚洲高清观看首页 | 国产又黄又爽又刺激的免费网址| 亚洲精品国产高清在线观看| 国产免费一区二区三区VR| 色噜噜狠狠色综合免费视频| 国产国拍亚洲精品福利| 最近的2019免费中文字幕| 色拍自拍亚洲综合图区| 国产三级在线观看免费| 日韩在线视精品在亚洲| 国产亚洲午夜高清国产拍精品| 日本免费电影一区二区| 亚洲国产成人精品无码区在线秒播| 91成人免费观看网站| 国产亚洲精品第一综合| 亚洲国产精品无码中文字| 最近最新高清免费中文字幕| 亚洲欧好州第一的日产suv| 亚洲AV无码乱码精品国产| 免费国产成人18在线观看| 亚洲色欲色欲www| 红杏亚洲影院一区二区三区| 1000部拍拍拍18勿入免费视频下载 | 亚洲综合图片小说区热久久| 日韩在线天堂免费观看| 美女视频黄的免费视频网页|