工作记录

来源:互联网 发布:淘宝闲鱼二手网 编辑:程序博客网 时间:2024/05/16 09:11

/*--得到随机数
1.随机本质:
 rand()返回 0 到1 之间的随机float 值。
2.简单实例需求:
 随机取得身高155-185,整型数据,随机范围为0到30,即:0 <= RandomNum <=30
3.简单实现: 
 0< rand()*30 <30
4.有一个问题:
 就是临界值0和30,如果最大和最小值分别取0和30,那么实际值的范围为1到29,身高为156到184,
 不合需求,因此范围定为-1到31
5.set height = (round((154 + rand()*31),0))
6.总结得到一定范围的随数公式:nRandom = MIN-1 + rand()* (MAX-MIN+1)
7.因此本自定义使用两个输入参数,并假定包括输入参数值在内时行随机

*/
IF EXISTS (SELECT *
    FROM   sysobjects
    WHERE  name = N'GetRandomNum')
 DROP FUNCTION GetRandomNum
GO

CREATE FUNCTION GetRandomNum
 (@Min int,
  @Max int)
RETURNS int
AS
BEGIN
 RETURN round(((@Min-1) + rand()*(@Max-@Min+1)),0)

END
GO

原创粉丝点击