社区
疑难问题
帖子详情
sql server中rand()的解释?
qiduo221
2009-05-03 08:41:33
rand()产生一个[0,1]的随机浮点数,可是,有时候遇到种子的概念?就糊涂了
比如rand(datepart(ms,getdate())*1000),它是怎么运算的?产生什么东西?
糊涂了
谢谢大家的帮助啊
...全文
249
6
打赏
收藏
sql server中rand()的解释?
rand()产生一个[0,1]的随机浮点数,可是,有时候遇到种子的概念?就糊涂了 比如rand(datepart(ms,getdate())*1000),它是怎么运算的?产生什么东西? 糊涂了 谢谢大家的帮助啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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作为种子,基本上可以认为是随机的
SQL
Server
中
的
RAND
函数的介绍和区间随机数值函数的实现
工作
中
会遇到
SQL
Server
模拟数据生成以及数值列值(如整型、日期和时间数据类型)随机填充等等任务,这些任务
中
都要使用到随机数。鉴于此,本文将对
SQL
Server
中
随机数的使用简单做个总结 。 T-
SQL
随机有关的三个函数
RAND
([seed] 此函数生成从0到1之间随机 float 值(详细说明查看https://technet.microsoft.com/zh-cn/library/ms177610(v=
sql
.90).aspx)。 CHECKSUM ( * | expression [ ,…n ] ) 此函数生成按照表的某一行或一组表达式计算出来的int校验
sql
server
中
随机函数NewID()和
Rand
()
在
SQL
Server
中
,随机函数有
rand
(),NewID(),其
中
rand
是在0到1内随机取数,NewID则是生成随机的uniqueidentifier唯一标识符。 SELECT * FROM Northwind..Orders ORDER BY NEWID() –随机排序 SELECT TOP 10 * FROM Northwind..Orders ORDER BY NEWID() –从Orders表
中
随机取出10条记录 示例 A.对变量使用 NEWID 函数 以下示例使用 NEWID() 对声明为 uniqueidentifier 数据类型的变量赋值。在测试 uniqueiden
SQL
server
随机数函数
在
SQL
server
中
,有个随机函数
rand
(),有不少新手可能不知道存在这个函数,现在我就把这个函数的一些随机数生成技巧写出来,这是面向菜鸟的,老鸟请不要拍砖呀,我的头还不够硬
sql
server
中
重复数据值只取一条的
sql
语句
代码如下: –建立数据表createtable TestData ( ID int identity(1,1) primary key, Data int, ColA varchar(20), ColB varchar(20) ) go –插入测试数据 declare @counts int declare @i int set @counts = 10000 set @i = 1 while @i<=@counts begin insert TestData (Data,ColA,ColB) values(cast(
rand
()*10000 as int),cast(
rand
() as va
SQL
Server
使用
rand
获得随机数
Rand
()函数是系统自带的获取随机数的函数,可以直接运行select
rand
() 获取0~1之间的float型的数字。 如果想要获取0~100之间的整数随机数,可以这样使用 select round(100*
rand
(),0)。 为方便使用,下面延伸了一个方法: DECLARE @NumBegin Int=60 --随机数的最小值 DECLARE @NumEnd Int=100 --随
疑难问题
22,206
社区成员
121,730
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章