目錄
源資料表
解決方案
隨機排序技巧
偽隨機數概念 學號
姓名1000980
羅大吳1002128
羅文1000881
張汶1001511
吳小麗1004831
柳生風1001586
樑先麗1002699
張通1004851
古鳳1000956
吳明麗1005353
趙香華1004493
吳風1001694
閏關1007361
吳巨集豔1008715
張大亮1003153
張正難1007363
柳文明1006978
陳明明1006474
趙正雲1004521
周星星1009711
周正亮1009636
朱麗麗1008744
吳芳華1004028
陳正雄1004967
周泰1004502
劉星星1009763
陳星1009801
柳香香1005930
朱朱1009893
吳華1004914
黃文風1005097
王重陽1009954
陳正明1003765
劉吳薪1007831
陳昆1009991
趙應芳1004389
朱華麗1009235
歐陽正雄
如圖所示為某次考試考生的名單。對考生利用sql進行隨機排序。
select *
from [sheet1$]
order by rnd(學號)
rnd函式原本為office vba中的函式,在excel sql查詢語句中,rnd函式同樣有效,其語法如下:
rnd(number)
rnd函式用於產生乙個大於或等於0且小於1的偽隨機數列,每呼叫rnd函式一次,即可生成該數列中下乙個隨機數。引數number為可省略的引數,其標誌著隨機數產生的種子。
當該值大於0時,將產生不同的隨機數列,number小於或等於0或者省略時,將產生固定的隨機數。在excel sql查詢運算中,number值可以取某個數字欄位的值,以表示該字段的值作為
隨機數的種子而生成不同的隨機數。
本例中,可以利用「學號」字段作為隨機數的種子,利用rnd函式將每個學號作為種子.可以生成不同的隨機數。因而可以以該隨機數作為關鍵字進行排序,從而實現隨機排序.
當number採用的字段為0或者負數時,或者number為使用者自定義的某個常數而非字段時,rnd函式將會對所有的記錄產生相同的隨機數,而此時則無法利用該隨機數對記錄進行隨機
排序。在excel sql中的rnd函式和vba中的rnd函式有所不同:在vba中的rnd函式語法與excel sql中的rnd函式語法一致,但是number引數的取值表示不同的含義。在vba中,number為負數時,rnd函式會將該number作為隨機數種子進行隨機數取值,這一點恰恰與excel sql中的rnd函式相反。
rnd函式生成的是偽隨機數。所謂偽隨機數,看似為隨機數,實質上在較長序列取值時還是有規律可循的。在大量的資料測試中,可能會得到相同的隨機數列,從而導致多次隨機排
序出現相同的結果。但是在日常運用中,此偽隨機數完全可以滿足一般使用者的需要。
Excel 2010 SQL應用065 反轉回文詩
目錄 源資料表 解決方案 回文詩悠悠綠水傍林偎 日落觀山四望回 幽林古寺孤明月 冷井寒泉碧映臺 鷗飛滿浦漁舟泛 鶴伴閒亭仙客來 遊徑踏花煙上走 流溪遠棹一篷開 中國古典詩詞是世界語言文學中的奇葩,很多作品流傳至令,廣為傳頌。回文詩又是中國古典詩詞中一種比較獨特的體裁,因為該體裁的詩回環往復都可以誦讀...
Excel 2010 SQL應用083 降序排列
區域銷售員 銷售數量 銷售額一區 何豔3730 216340 二區彭勤 5822 291100 三區葉倩 4014 220770 三區曾德昌 9198 542682 一區曹乾剛 6202 347312 一區雷小露 6992 384560 二區餘佳麗 3661 197694 三區鄧明昊 2548 15...
Excel 2010 SQL應用084 TOP謂詞
姓名語文 數學英語 何豔94 6280 何冬梅86 6493 馮晨90 6474 彭勤77 6789 葉倩63 6883 曾德昌90 6993 曹乾剛70 6984 雷小露79 7079 餘佳麗93 7199 趙林78 7177 鄧明昊81 7287 邱志娟84 7487 馬琴63 7476 王清秀...