使用Eloquent 和Fluent 在Laravel 中選擇隨機行
在處理大型資料集時,通常需要從資料庫中擷取隨機行執行準備計數。 Laravel 提供了多種使用 Eloquent 和 Fluent 介面來實現此目的的選項。
Eloquent
Laravel 5.2 及更高版本提供了inRandomOrder() 方法:
此方法返回指定模型中所有隨機行返回指定模型中所有隨機行返回指定模型中所有隨機行返回指定模型中所有隨機行返回指定模型中所有隨機行返回指定模型中所有隨機行傳回的集合。若要限制檢索的行數,請使用limit() 方法:
要檢索單一隨機行,請使用first() 方法:
對於舊版本在Laravel (4.2.7 - 5.1) 中,您可以使用orderByRaw()方法:
對於Laravel 版本4.0 - 4.2.6,使用:
Fluent
FluentFluent
在Laravel之前的版本5.中,order_by() 方法與資料庫一起使用::raw()助理函數:其他注意事項需要注意的是,orderBy() 方法目前不允許使用 ASC 或 DESC 以外的任何參數。因此,需要使用 orderByRaw() 方法或 inRandomOrder() 方法來隨機選擇行。 效能注意事項擷取大量行時,考慮對效能的影響很重要。使用 inRandomOrder() 方法可能比使用 orderByRaw() 方法更有效,因為它不需要額外的子查詢來產生隨機排序。
以上是如何使用 Eloquent 和 Fluent 在 Laravel 中選擇隨機行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!