可能重复:
如何在 SQL 中请求随机行?
由于表很大,我无法使用 MySQL 函数RAND()
并试图避免使用RAND()
这种方式:
$a = mysql_fetch_array(mysql_query("SELECT MIN(id), MAX(id) FROM table WHERE category_id='".$var."'"));
$id = rand($a[0],$a[1]);
$id2 = rand($a[0],$a[1]);
这不起作用,因为:在$a
我分别拥有最大和最小的ID category_id
- 没关系。
问题带来了带有$id
and的行$id2
- 因为使用了最小和最大 ID 值,但是 PHP 函数rand()
会在最小值和最大值之间取一些随机值 - 并且很有可能挑选出的记录不属于category_id
.
所以我想问你一个方法,我该如何解决这个例子。
谢谢你