目前,我正在使用此查询在我的PHP脚本:如何对所选行进行排序(真正)随机?
SELECT * FROM `ebooks` WHERE `id`!=$ebook[id] ORDER BY RAND() LIMIT 125;
该数据库将约2500排在最高大的,但我读过ORDER BY RAND()
最终将处理时间慢下来作为数据数据库增长。
所以我正在寻找一种替代方法来查询我的问题,让事情顺利进行。
此外,我注意到ORDER BY RAND()
并不是真正的随机化行,因为我经常看到它遵循某种模式,有时会一遍又一遍地重复。
是否有任何方法可以真正随机化行?
'ORDER BY RAND()'减慢,不'RAND()'本身。 – hakre 2012-03-13 16:58:08
AFAIK最好的方法是做随机PHP端。例如,如果你的ID是一致的,你可以从MySQL获得count(*),然后随机选择一些id。 – Robus 2012-03-13 16:58:31
看看http://stackoverflow.com/questions/1823306/mysql-alternatives-to-order-by-rand – a1ex07 2012-03-13 16:59:17