如何解决是否可以在MS Access中生成不会在每次运行查询时都更改的随机数?
| 我试图从Microsoft Access数据库中随机抽取200条记录。我创建了一个查询,并在新字段中使用rnd()函数为每个记录生成一个随机数。然后,我对随机数字段进行了排序,并检索了前200名文章。我的问题是,每次运行查询时,我都会得到不同的随机数。我知道在其他程序中,可以为种子设置用户定义的值,并且此问题将得到解决,但是我不知道如何在MS Access中自己设置种子值。这可能吗? 谢谢您的帮助!解决方法
您是否尝试阅读Rnd()函数的Access帮助?该函数具有单个参数,帮助文件定义了种子的功能:
If number is Rnd generates
Less than zero The same number every time,using number as the seed.
Greater than zero The next random number in the sequence.
Equal to zero The most recently generated number.
Not supplied The next random number in the sequence.
因此,您希望每次运行查询时传递的负数对于每行都是相同的。自动编号PK将是一个理想的选择,因为它将是唯一的-仅使用Rnd(-MyPK)
。
唯一的问题是,如果您使用的是随机自动编号,在这种情况下,某些数字已经是负数,因此您会遇到麻烦。我没有一个好的解决方案来避免冲突(即,两行产生相同的值,因为它们具有相同的绝对值),并且不会导致溢出。
,在取负数之前简单地对自动编号求平方即可消除“已经负数”的问题?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。