相关疑难解决方法(0)

来自数据库表的随机记录(T-SQL)

是否有一种简洁的方法从sql server表中检索随机记录?

我想随机化我的单元测试数据,所以我正在寻找一种从表中选择随机id的简单方法.在英语中,select将是"从表中选择一个id,其中id是表中最低id和表中最高id之间的随机数."

我无法找到一种方法来执行它而无需运行查询,测试空值,然后重新运行,如果为null.

想法?

t-sql sql-server random

80
推荐指数
4
解决办法
5万
查看次数

ORDER BY RAND()似乎不是随机的

我有一个相当简单的SQL(MySQL):

SELECT foo FROM bar ORDER BY rank, RAND()
Run Code Online (Sandbox Code Playgroud)

我注意到当我刷新结果时,随机性很可疑.

在目前的样本数据中,有六个结果具有相等的等级(整数零).有很多关于随机性的测试,但是这是一个简单的手工测试:当运行两次时,第一个结果在两次运行中应该是相同的,大约六分之一的时间.这当然不会发生,主要结果至少有三分之一的时间是相同的.

我希望在排列上有统一的分布.我不是专家统计学家,但我很确定ORDER BY RAND()应该做到这一点.我错过了什么?

使用MySQL,SELECT rand(), rand()显示两个不同的数字,所以我不买"每个查询一次"的解释

mysql sql random statistics

5
推荐指数
1
解决办法
1025
查看次数

标签 统计

random ×2

mysql ×1

sql ×1

sql-server ×1

statistics ×1

t-sql ×1