我已经开始开发一个从数据库中随机抽取两张图片的网站。
我将一个随机数赋给一个变量,介于1和我的数据库中存储的图像数量之间。然后,我查询数据库以查找该ID,并在HTML图像标记中显示图像。这工作得很好,两个图像随机出现,我进行了检查,以确保它们永远不会相同。但有时,一个或两个图像不会出现在页面上,但如果我查看源代码,它们就会出现在那里。
(我应该注意的是,图像实际上并没有存储在数据库中,而只是它们的名称)
下面是我用来从数据库中提取它们的代码
function selectImage($id)
{
$query = "SELECT * FROM Images WHERE id =
从mysql随机抽取1000行(而不是重复行)的最佳方法是什么?
Now i use this
1. get all data(id row) in to array.
2. Random position of array 1000 position.
3. i will get 1000 row (not duplicate row)
但是,这个过程很慢,
你有简单的方法得到随机的1000行(不是重复行)吗?
我有一个很大的表,大约有660万条记录,我想随机抽取10万条记录。
SELECT column FROM table
ORDER BY RAND()
LIMIT 100000
每一张唱片都非常慢。
我还没有找到一个与MySQL/MariaDB一起使用的解决方案来提取10万条记录的随机样本。
请给我建议。
谢谢。
我想用Impala从表中随机抽取n行。我可以想出两种方法,即:
SELECT * FROM TABLE ORDER BY RANDOM() LIMIT <n>
或
SELECT * FROM TABLE TABLESAMPLE SYSTEM(1) limit <n>
在我的例子中,我将n设为10000,并从超过2000万行的表中进行抽样。如果我正确理解,第一个选项实际上为每一行创建了一个0到1之间的随机数,并通过这个随机数进行排序。第二个选项创建了许多不同的“桶”,然后随机抽取至少1%的数据(在实践中,这似乎总是比提供的百分比大得多)。在这两种情况下,我只选择了1000
出于测试目的,我需要向没有缺失值的数据帧添加缺失值,如何向我的数据帧添加10%的随机NA:
dat <- data.frame(v1=rnorm(20),v2=rnorm(20),v3=rnorm(20))
我的想法是这样的:
a <- sample(1:nrow(dat),3,replace=F)
b <- sample(1:ncol(dat),2,replace=F)
dat[a,b] <- NA
但这还不够随机。谢谢。
我有一个大的未排序的CSV文件(>4M记录)。每个记录都有一个类别,在前三列中对其进行了描述。记录的其余部分是地址数据,这些数据可能是唯一的,也可能不是唯一的。
A, 1, c, address1 # the category for this record is A1t
A, 1, c, address2
C, 3, e, address3 # the category for this record is C3e
B, 2, a, address4
我想在每个类别中抽取一个唯一记录的随机样本(所以在类别A1t中有5个唯一的记录,来自C3e的5个唯一记录,等等)。我使用sort编写