Почему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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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