2019年4月8日 星期一

[SQL] Random 亂數

一般的亂數在直接使用RAND()時容易出現一整片都是同個亂數的問題,
像這次我需要每列資料、甚至每欄資料要產生不同參數時,
就需要用NEWID()當作SEED,傳入RAND()中產生不同亂數。

以下為程式演練,可以參考看看!



SELECT  RAND(CAST(NEWID() AS VARBINARY)) AS 隨機亂數 ,
   CAST(CEILING(RAND(CAST(NEWID() AS VARBINARY))*100) AS int) AS [1到100亂數],
   CAST(FLOOR(RAND(CAST(NEWID() AS VARBINARY))*10) AS int) AS [0到10亂數],
   CAST(CEILING(RAND(CAST(NEWID() AS VARBINARY))*10) AS int) AS [1到10亂數],
   CAST(CEILING(RAND(CAST(NEWID() AS VARBINARY))*5) AS int) AS [1到5亂數],
   CAST(CEILING(RAND(CAST(NEWID() AS VARBINARY))*3) AS int) AS [1到3亂數],
           CHAR(64 + CAST(CEILING(RAND(CAST(NEWID() AS VARBINARY)) * 5) as int)) AS [A到E亂數]
FROM  TabelA

沒有留言:

張貼留言

[Excel] 日期(數值)轉文字

Excel的日期格式真的常常使人抓狂, 在使用者輸入日期後該欄位真正的值會被Excel轉換成一串數字, 這串數字代表著自1900/1/1到該日期的總天數。 但程式或使用者真正要的,就不是這串數字, 他們就是要日期!要日期!! So, 為了取得真正的值只好使用TEXT函數來解決了 ...