有一段时间没有编程,这里我遇到了这个简单的问题,基本上我需要生成两个在最大限度内的随机数,但是彼此设定距离以便随机(每次)使用mysql LIMIT从数据库调用字段。
离。假设有95个数据库字段($ max),返回的字段= 20($ fields)(应返回的字段数)或范围限制20(即min - max之间的差异为20)
SELECT............... LIMIT $a, $fields
$a - $b = 20
$b < 95
我只是用...
$a = floor(mt_rand(0, ($max-$fields)));
生成一个$ a并使用$ fields值给我所需的所有信息(即从哪里开始获取记录($ a)和要获取的记录数($ fields))
关于如何做到这一点的另一种想法?
答案 0 :(得分:0)
如果你的桌子总是大一点那么两个随机数的所需距离可以像这样:
// $row_count is the number of rows you have in the database
$max = mt_rand($distance, $row_count);
$min = $max - $distance;
// now you can use these in sql like
$sql = "select ... offset {$min} limit {$distance}";
参考文献:mt_rand