首頁 > 後端開發 > php教程 > 如何從 Laravel 資料庫表中取得隨機行?

如何從 Laravel 資料庫表中取得隨機行?

Barbara Streisand
發布: 2024-11-21 16:14:10
原創
442 人瀏覽過

How do I get random rows from a database table in Laravel?

在Laravel 取得隨機行

要使用Laravel 的Eloquent ORM 或Fluent 查詢產生器從資料庫表格中擷取隨機行,有表格擷取隨機行幾種方法可用的方法,取決於您的Laravel版本

Laravel 5.2 及更高版本

在Laravel 5.2 及更高版本中,您可以使用inRandomOrder() 方法:

$randomUser = User::inRandomOrder()->first();
$randomUsers = User::inRandomOrder()->take(5)->get();
登入後複製

Laravel 5.1和在

Laravel 5.2 之前,您將使用原始SQL 語法來實現隨機性:

$randomUser = User::orderByRaw("RAND()")->first();
$randomUsers = User::orderByRaw("RAND()")->take(5)->get();
登入後複製

Laravel 3

Laravel 3
$randomUser = User::order_by(DB::raw("RAND()"))->first();
$randomUsers = User::order_by(DB::raw("RAND()"))->take(5)->get();
登入後複製

在🎜>在Laravel中3、將order_by()方法與DB::raw()一起使用函數:

$randomUser = User::all()->random();
$randomUsers = User::all()->random(10);
登入後複製
使用集合

或者,您可以使用集合的random () 或random($count)方法來取得隨機元素或陣列隨機的元素:

注意事項在SQL 中,ORDER BY RAND() 對於大型表來說效率較低,因為它需要資料庫引擎對所有元素進行排序記錄。為了獲得更好的效能,請考慮使用替代方法,例如取樣或索引。

以上是如何從 Laravel 資料庫表中取得隨機行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板