pengpenglin
人,必須選擇一種生活方式并有勇氣堅持下去
BlogJava
首頁
新隨筆
新文章
聯系
聚合
管理
posts - 262, comments - 221, trackbacks - 0
【原】Oracle開發專題之:隨機查詢
【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張表進行連接,是不是說明數據庫的表的設計有問題?那,一個什么樣的表連接數值才是合適的數據庫表的設計呢?
謝謝。
祝順利,健康。
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
【原】Oracle開發專題之:時間運算2(日期截取及四舍五入)
【原】Oracle開發專題之:時間運算
【原】Oracle開發專題之:分析函數總結
【原】Oracle開發專題之:報表函數
【原】Oracle開發專題之:窗口函數
【原】Oracle應用專題之:分析函數3(Top/Bottom N、First/Last、NTile)
【原】Oracle開發專題之:分析函數2(Rank, Dense_rank, row_number)
【原】Oracle開發專題之:分析函數(OVER)
【原】Oracle開發專題之:刪除重復記錄
【原】Oracle開發專題之:行列轉換
Copyright ©2025 Paul Lin Powered by:
博客園
模板提供:
滬江博客
<
2008年6月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(21)
給我留言
查看公開留言
查看私人留言
隨筆分類
J2EE 框架(9)
J2EE基礎(4)
J2SE(43)
Java 工具(5)
Oracle Concept(4)
Oracle SQL/PLSQL(9)
Oracle 開發(13)
Oracle 管理(4)
Oracle 調優
Oracle 錯誤診斷
RoR(19)
UML(3)
Unix / Linux(13)
Web基礎(19)
其它技術(7)
感悟(3)
雜項(7)
架構與性能(8)
模式與重構(19)
灌水(8)
電影與音樂(16)
走過的路(1)
軟件過程與軟件方法(3)
陽光戶外(2)
項目管理(36)
隨筆檔案
2012年2月 (3)
2011年11月 (4)
2011年10月 (1)
2011年9月 (2)
2011年8月 (2)
2011年7月 (5)
2011年6月 (3)
2011年5月 (1)
2011年4月 (1)
2011年3月 (3)
2011年1月 (1)
2010年12月 (1)
2010年11月 (5)
2010年10月 (3)
2010年9月 (1)
2010年7月 (1)
2010年6月 (1)
2010年5月 (4)
2010年4月 (9)
2010年3月 (19)
2010年2月 (8)
2010年1月 (3)
2009年12月 (34)
2009年11月 (1)
2009年10月 (2)
2009年7月 (4)
2009年6月 (5)
2009年5月 (3)
2009年4月 (2)
2009年3月 (1)
2009年2月 (5)
2009年1月 (5)
2008年12月 (13)
2008年11月 (4)
2008年10月 (1)
2008年9月 (6)
2008年8月 (5)
2008年7月 (3)
2008年6月 (31)
2008年5月 (10)
2008年4月 (9)
2008年3月 (7)
2008年2月 (4)
2008年1月 (19)
BlogJava熱點博客
BeanSoft
Jack.Wang
如坐春風
詩特林
鄭暉
銀河使者
阿密果
隔葉黃鶯
好友博客
無羽蒼鷹
搜索
最新評論
1.?re: 【Java基礎專題】編碼與亂碼(01)---編碼基礎[未登錄]
666666666666666666666這幾天正在做個類似工程編碼出現錯誤
--李
2.?re: 【Java基礎專題】IO與文件讀寫---使用Apache commons IO簡化文件讀寫
不錯
--阿斯蘭
3.?re: 【Java基礎專題】編碼與亂碼(03)----String的toCharArray()方法
多謝分享
--thx
4.?re: 【Java基礎專題】編碼與亂碼(05)---GBK與UTF-8之間的轉換
評論內容較長,點擊標題查看
--karl
5.?re: 【Java基礎專題】編碼與亂碼(01)---編碼基礎[未登錄]
謝謝,幫了我大忙!
--小龍
閱讀排行榜
1.?Oracle中如何插入特殊字符:& 和 ' (多種解決方案)(48446)
2.?getOutputStream() has already been called for this response的解決方法(43350)
3.?【Java基礎專題】編碼與亂碼(05)---GBK與UTF-8之間的轉換(37031)
4.?360安全衛士誤刪audiosrv.dll文件造成系統無聲的解決方案(21267)
5.?Java中讀取字節流并按指定編碼轉換成字符串的方法(17318)
評論排行榜
1.?360安全衛士誤刪audiosrv.dll文件造成系統無聲的解決方案(33)
2.?【原】Oracle開發專題之:時間運算(11)
3.?【Java基礎專題】編碼與亂碼(05)---GBK與UTF-8之間的轉換(11)
4.?getOutputStream() has already been called for this response的解決方法(10)
5.?【原】Oracle開發專題之:分析函數(OVER)(8)
主站蜘蛛池模板:
亚洲图片一区二区
|
亚洲精品成人片在线播放
|
亚洲国产精品免费观看
|
成年黄网站色大免费全看
|
亚洲精品在线电影
|
亚洲精品在线免费观看
|
亚洲成人网在线观看
|
久草视频免费在线
|
亚洲av成人综合网
|
成人性生交视频免费观看
|
亚洲色偷偷综合亚洲av78
|
午夜毛片不卡高清免费
|
亚洲avav天堂av在线网毛片
|
免费一看一级毛片
|
国产精品免费在线播放
|
久久99国产亚洲高清观看首页
|
国产又黄又爽又刺激的免费网址
|
亚洲精品国产高清在线观看
|
国产免费一区二区三区VR
|
色噜噜狠狠色综合免费视频
|
国产国拍亚洲精品福利
|
最近的2019免费中文字幕
|
色拍自拍亚洲综合图区
|
国产三级在线观看免费
|
日韩在线视精品在亚洲
|
国产亚洲午夜高清国产拍精品
|
日本免费电影一区二区
|
亚洲国产成人精品无码区在线秒播
|
91成人免费观看网站
|
国产亚洲精品第一综合
|
亚洲国产精品无码中文字
|
最近最新高清免费中文字幕
|
亚洲欧好州第一的日产suv
|
亚洲AV无码乱码精品国产
|
免费国产成人18在线观看
|
亚洲色欲色欲www
|
红杏亚洲影院一区二区三区
|
1000部拍拍拍18勿入免费视频下载
|
亚洲综合图片小说区热久久
|
日韩在线天堂免费观看
|
美女视频黄的免费视频网页
|