随机数函数的应用归纳

来源:互联网 发布:算法交易和量化交易 编辑:程序博客网 时间:2024/05/13 03:25

随机数函数的应用归纳

不管是哪种编程语言,都有产生随机数的函数。在实际开发中,对于随机数函数的应用,更是五花八门,数不胜数,今天,我就在这里提出“随机数函数的应用归纳”的“课题”(说成课题可能大了点,但是又想不到什么合适的词来表述,就暂时用一下吧,^-^),并给出最近刚好借助随机数函数来完成的几个简单应用,相当于给出一个引子,并会在后续学习和工作过程中不断来完善这个“课题”,当然,也热烈欢迎各位网友的参与与指教,共同来完成这个不算课题的“课题”。

(注:图片来自网络)

//2012-3-17

1、 应用场景一:使用脚本向数据库(暂以Sql Server2008为例)中的表tb_people(暂以表tb_people为例)插入n(n极大)条数据作为测试所用数据后,现要求将字段job(暂以job为例)的值随机更新为“teacher”、“worker”、“farmer”、“driver”、“policeman”、“postman”中的任意一个,这时我们考虑可以使用随机数来实现,具体实现代码如下:

DECLARE @i int

DECLARE @randjob int

SET @i=1

WHILE @i<n+1

BEGIN

SET @randjob=CAST((RAND()*5)AS int)

UPDATE tb_people

SET job=

(CASE

WHEN  @randjob=0 THEN ‘teacher’

WHEN  @randjob=1 THEN ‘worker’

WHEN  @randjob=2 THEN ‘farmer’

WHEN  @randjob=3 THEN ‘driver’

WHEN  @randjob=4 THEN ‘policeman’

ELSE ‘postman’

END

)

WHERE id=@i

SET @i=@i+1

END

[解析]该方法使用RAND()函数产生一个0~1之间的随机数,再将结果乘以5得到一个0~5之间的随机数,同时使用CAST()函数将前面得到的随机数取整,得到0、1、2、3、4五个随机整数,并使用这些数作为判断语句的条件。该方法的不足是,当job取值很多时,就十分麻烦。