我已经建立了一个食谱食谱网络服务和部分web服务是给用户一个随机的食谱一天。每日食谱功能就是每天只输出一个新的菜谱。我构建了Sql语句如下: $sql="SELECT * FROM recipe_2 ORDER BY RAND() LIMIT 1"; while($row=mysql_fetch_array($result_set))
{
我有一个很大的数据库(MySQL,Aurora serverless),我想得到随机的行(比如1或5),我知道使用SORT BY RAND()非常慢,所以它被丢弃了。在我的例子中,我的数据库使用二进制(16)作为标识符/主键,它是一个随机生成的散列。
问题是,我应该怎么做才能检索此配置的随机行?请注意,在我的例子中,速度比准确性更重要,所以如果它不是完全随机的行,那么它不是一个大问题。问题是,这将一次又一次地生成相同的<em