如何使用 Eloquent 模型获取随机记录
如何使用 Eloquent 模型获取随机记录
这个问题在这里已经有答案了:
我正在尝试从Laravel 5.7的表中获取随机数量的行,但我找不到任何解决方法。
我已经使用了
Model::all()->random(2);
它工作得很好。但是我需要应用where子句,比如Model::select(\'column\')->where(\'column\',\'value\')->random(number of rows\');
那么我如何使用eloquent实现这个目标呢?
请给我一些提示。
admin 更改状态以发布 2023年5月21日
您可以使用inRandomOrder
方法与first
结合使用,像这样:Model::inRandomOrder()->select('column')->where('column','value')->first();
你可以像这里建议的那样简单地添加到链中inRandomOrder
:
然后限制你的数据集。
Model::select('column') ->where('column','value') ->inRandomOrder() ->limit(2) // here is yours limit ->get();