Как объединить 3 таблицы, две из них имеют один внешний ключ, а другая таблица имеет два внешних ключа - PullRequest
0 голосов
/ 30 октября 2019

У меня есть 3 таблицы, которые я хочу объединить вместе с

таблица 1 порождает (id, spawn_name, spawn_number) таблица 2 инкубатор (id, spawn_id, инкубатор_имя, инкубатор_номер) таблица 3 rearing_tanks (id, инкубатор_идентификатор, spawn_id, tank_name, tank_number).

когда я запускаю этот запрос, я получаю

    public function getForDataTable($search = '', $order_by = '', $sort = 
      'asc', $trashed = false)
        {
        $query = $this->model->query()
        ->leftjoin('coastal.incubators', 'coastal.incubators.id', '=', 
       'coastal.rearing_tanks.incubator_id')
        ->leftjoin('coastal.spawns','coastal.spawns.spawn_id', '=', 
        'coastal.incubators.spawn_id')
            ->select([ 'spawns.spawn_name', 'incubators.Incubator_name', 
    'rearing_tanks.tank_name', 
        'rearing_tanks.tank_number']);
         if (!empty($search)) {
              $query- >whereLike(['coastal.spawns.name','coastal.incubators.name','coastal.rearing_ 
       tanks.name','coastal.rearing_tanks.number'],$search);
            }if ($trashed == "true") {
              return $query->onlyTrashed();
            }
            return $query ;
          }

Я хочу получить spawns.spawn_name, incubators.incubator_name rearing_tanks.tank_name rearing_tanks.tank_number

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...