我有这个查询
$sql = mysql_query("SELECT DISTINCT a, b FROM table ORDER BY RAND() DESC limit 15");
当我的表只有几行时,哪个工作得很好,现在我的表有数千个,这使我的页面加载速度非常慢。
我试过了
$s = mysql_query("SELECT id FROM table");
$z = mysql_num_rows($s);
$n = rand(1,$z);
$sql = mysql_query("SELECT DISTINCT a, b FROM table limit $n, 15");
这让它变得更快但是它给了我一个随机的行,然后是另外14行,而不是所有15个来自随机位置,是否有更好的方法来做到这一点?