从select后的数据集中随机抽取部分数据,解决思路是:打乱数据集,重新排序,抽取数据。
$num = 50; //需要随机抽取的数据
$list = Db::table('table')->order('id desc')->limit(100)->select(); //获取数据集 总数100条,可以根据自己的实际情况决定是否需要limit
shuffle($list); //打乱数组
$new_ary = array_slice($list,0,$num); //抽取数据
print_r($new_ary);