Я представляю вам контекст: у нас есть три таблицы:
- Пользователи
- Sedes
- UsersSedes (центр) [user_id, sedes_id]
Пример:
Администратор, зарегистрированные и активные седы — это A и B (есть также C и D)
Список:
Пользователь 1 с sede A
Пользователь 2 с sede B
Пользователь 3 с sede B
Пользователь 4 с sede B
Я не знаю, могу ли я объясните...
Проблема в том, что в моей таблице около 2000 записей, поскольку я запрограммировал, для управления данными требуется много времени, поскольку выполняется 2000 запросов.
РЕДАКТИРОВАТЬ
На самом деле я использую foreach для создания массива с данными, например:
$pacientes = Usuario::with([' sedes'])->where('role_id', 3)->get();
$sedesHabilitadas = auth()->user()->sedes->pluck('id')->toArray();
$habilitados = array();
foreach($pacientes as $paciente)
{
if( in_array($paciente->sedes->pluck('id')->first(), $sedesHabilitadas))
{
array_push($habilitados, $paciente);
}
}
Подробнее здесь: https://stackoverflow.com/questions/504 ... -on-big-bd
Мобильная версия