我有一個資料表 大概 15 萬筆資料 其實也沒很多
before
$posts = Post::inRandomOrder()
->limit(1000)
->get();
這樣寫,結果跑起來超慢,然後我改寫
after
$posts = Post::orderBy('id', 'desc')
->where('id', '<', rand(1, \DB::table('posts')->max('id')))
->limit(1000)
->get();
雖然,這樣就沒有很隨機了,而是從隨機中間點,抽 1000 筆出來
但因為我在產生 sitemap 而已,所以其實可接受
算是 laravel 小小地雷