sql server中rand()的解释?

qiduo221 2009-05-03 08:41:33
rand()产生一个[0,1]的随机浮点数,可是,有时候遇到种子的概念?就糊涂了
比如rand(datepart(ms,getdate())*1000),它是怎么运算的?产生什么东西?
糊涂了
谢谢大家的帮助啊
...全文
249 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
rucypli 2009-05-03
  • 打赏
  • 举报
回复
备注
使用同一个种子值重复调用 RAND() 会返回相同的结果。

幸运的意外 2009-05-03
  • 打赏
  • 举报
回复
rand函数是根据提供的参数的值产生值的。如果参数本身不是一个可近似模拟随即的值的话,那么通过rand函数出来的值都是一样的。而datepart(ms,getdate())是取得当前时间里毫秒的那一部分,可以近似的认为在特定时间内,毫秒是一个随机值。所以就有了rand需要的随机种子参数,进而产生随机数。
百年树人 2009-05-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 Haiwer 的回复:]
种子随机rand才能随机
用datepart(ms,getdate())*1000作为种子,基本上可以认为是随机的
[/Quote]

顶..
claro 2009-05-03
  • 打赏
  • 举报
回复
帮顶
sdhdy 2009-05-03
  • 打赏
  • 举报
回复
1楼的。
昵称被占用了 2009-05-03
  • 打赏
  • 举报
回复
种子随机rand才能随机
用datepart(ms,getdate())*1000作为种子,基本上可以认为是随机的

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧