sql server 函數--rand() 生成整數的隨機數

sql server 函數--rand() 生成整數的隨機數

rand() 定義: 返回從0到1之間的隨機浮點值。

舉例說明:

select rand() as 隨機數   

結果如圖:

select cast( floor(rand()*N) as int )  --方法1

結果:20

select cast( ceiling(rand()*N) as int ) --方法2

結果:43

大致一看,這兩種方法沒什麼區別,區別就是他們的生成隨機數的範圍:

方法1的數字範圍:0至N-1之間,如 cast( floor(rand()*100) as int)就會生成0至99之間任一整數

方法2的數字範圍:1至N之間,如    cast( ceiling(rand() * 100) as int)就會生成1至100之間任一整數

比較 CEILING 和 FLOOR

CEILING 函數返回大於或等於所給數字表達式的最小整數。

FLOOR 函數返回小於或等於所給數字表達式的最大整數。

例如,對於數字表達式 12.9273,CEILING 將返回 13,FLOOR 將返回 12。

此隨筆或爲自己所寫、或爲轉載於網絡。僅用於個人收集及備忘。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章