Вслед за этим вопрос: How to chunk results from a custom query in LaravelКак кусок результатов из пользовательского запроса с Laravel 5
Я стараюсь
DB::connection('mgnt')->select($query)->chunk(200, function($orders) {
foreach ($orders as $order) {
//a bunch of code...
}
});
Но я получаю следующее сообщение об ошибке:
FatalErrorException in MigrationController.php line 98:
Call to a member function chunk() on array
ли отрывов возможно без наличия подходящей модели ОРВ? Я пытаюсь сделать так, что я получаю пустую страницу (не могу найти никаких ошибок в любом журнале), если запрос возвращает слишком много результатов.
Я думаю, что сейчас это максимум 50.000 результатов, которые я могу запросить сразу. Возможно, это связано с некоторыми ограничениями или ограничениями в Laravel?
хорошая идея, но проблема, кажется, первая линия, как результат слишком велик, чтобы обрабатывать, сохранять или получать, я надеялся, что функция куска laravel разобьет запрос. – kritop
А я вижу. Тогда почему бы не использовать модель Eloquent? Я не знаю, что ограничивает количество результатов. Это может быть время выполнения PHP или некоторые другие настройки на сервере веб-сервера или базы данных ... – lukasgeiter
это сложный запрос ETL с подзапросами, переменными, вычислениями, около 60 строк SQL. Я тестировал его с разными клиентами MySQL, и результаты занимают 17 секунд и возвращают 250 тыс. Строк. – kritop