ПочемуwhereIn() лучше, чем отношения в laravel?Php

Кемеровские программисты php общаются здесь
Anonymous
ПочемуwhereIn() лучше, чем отношения в laravel?

Сообщение Anonymous »

База данных нашего приложения Laravel увеличивается, и время запроса также увеличивается. В запросах я заметил одну вещь:whereIn() выполняется намного быстрее, чем вызов Relations.
Мне нужно получить все поставки клиента, поэтому с помощью Отношение Laravel, что я делаю:

Код: Выделить всё

$customers = Customer::with('consignments')->where('id','>',1)->get();
//and now I can access all consignments
foreach($customers as $customer ){
$customer->consignments
}
но это очень медленно, даже когда я использую индексы. Может быть, я неправильно использую индексы? С другой стороны, если я используюwhereIn(), это будет намного быстрее:

Код: Выделить всё

$customer_ids = Customer::selct('id')->where('id','>',1)->pluck('id')->toArray();
$consignments = Consignment::whereIn('customer_id',$customer_ids)->get()
Это очень быстро. Совершаю ли я здесь какую-то ошибку? Можем ли мы ускорить взаимодействие с Laravel?

Подробнее здесь: https://stackoverflow.com/questions/739 ... in-laravel

Вернуться в «Php»