我的用户表有超过100K行。我需要将它们全部取出以用于导出目的。但是,当我使用以下代码时,它不会返回任何内容。但是,如果我申请限制,那么它将返回它们。它基本上返回10K行,当我提供20K的限制时,它不会返回任何内容。如果我使用 mysqli_query ,它会在同一服务器和数据库中返回所有内容。
$myRows = DB::table('users')->get();//returns empty
$myRows = DB::table('users')->take(10000);//returns 10,000 rows
$myRows = DB::table('users')->take(20000);//returns empty
我是Laravel的新手。 提前谢谢。
答案 0 :(得分:2)
我认为chunking (scroll to "Chunking Results From A Table" point)在这里是个不错的选择。
DB::table('users')->chunk(10000, function($users) {
//some connect code
});