数据库随机,必然是临时表文件排序。 如果对随机的要求不高,可以采用随机偏移的方式(limit offset,nums, 随机offset,让每次从不同的位置开始),这种方式记录还是有序的,只是每次结果的偏移位置不一样。 如果要足够随机,就自己先冗余一下: 将field1=0的数据冗余出来,存为一张新表 使用随机函数生成1-新表最大ID的若干随机数。 在新表中用 where id in(xxx)的方式获取
数据库随机,必然是临时表文件排序。
如果对随机的要求不高,可以采用随机偏移的方式(limit offset,nums, 随机offset,让每次从不同的位置开始),这种方式记录还是有序的,只是每次结果的偏移位置不一样。
如果要足够随机,就自己先冗余一下: