php – 如何使用Laravel 4的Eloquent ORM从数据库中选择一个随机
发布时间:2020-12-14 19:36:09 所属栏目:大数据 来源:网络整理
导读:我有一个名为Question的Eloquent模型链接到名为questions的数据库表. 是否有一个Eloquent函数可以让我从数据库中提取一个随机问题(或一组随机问题)?类似于以下内容: $random_question = Question::takeRandom(1)-get(); 要么 $random_questions = Question
我有一个名为Question的Eloquent模型链接到名为questions的数据库表.
是否有一个Eloquent函数可以让我从数据库中提取一个随机问题(或一组随机问题)?类似于以下内容: $random_question = Question::takeRandom(1)->get(); 要么 $random_questions = Question::takeRandom(5)->get(); 解决方法
你可以这样做:
$random_question = Question::orderBy(DB::raw('RAND()'))->take(1)->get(); 和 $random_question = Question::orderBy(DB::raw('RAND()'))->take(5)->get(); 如果要使用问题中指定的语法,可以使用范围. public function scopeTakeRandom($query,$size=1) { return $query->orderBy(DB::raw('RAND()'))->take($size); } 现在你可以做$random_question = Question :: takeRandom(1) – > get();得到1个随机问题. 您可以在http://laravel.com/docs/eloquent#query-scopes阅读有关Laravel 4查询范围的更多信息 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |