Ты не должен делать это так.Существует элегантный способ сделать это, используя Eloquent Relationships в вашей модели
Сначала мы определим отношение hasMany в модели компании следующим образом.
public function structures()
{
return $this->hasMany(CompanyStructures::class, foreign_key, local_key);
}
Теперькогда мы пытаемся запросить модель «Компания».Мы можем сделать это следующим образом:
return Company::with('structures')->get([ALL_YOUR_SELECT_COLUMNS]);
Это вернет все столбцы, определенные в -> get (), со всеми столбцами, совпадающими в таблице структур с первичным ключом модели "Company".
Вы можете ограничить данные, добавив замыкание в канал -> with (), и получите только те столбцы, которые вам нужны.Например, если я хочу получить только свойство «расположение структур компании» (я предполагаю, что у вас будет такое), мы бы сделали что-то вроде этого.
return Company::with(['structures' => function(){
return $query->select(columns_from_child_table);
}])->get([ALL_YOUR_SELECT_COLUMNS]);
Надеюсь, это решит ваш ответ.Я настоятельно рекомендую вам прочитать документацию по приведенной выше ссылке и убедиться, что вы используете laravel eloquent в максимально возможной степени.Обратитесь к версии документа в соответствии с вашей версией Laravel.