Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Re: Laravel 5.x » Запрос с leftjoin, НЕ выводит все записи, что не так ? » 16.02.2018 16:51:43

Дело в том что джоиню туже самую таблицу - tasks

В первой выборке делаю фильтр
    ->where("tasks.image_tip",1)
И потом джоиню
     ->leftJoin('tasks as t2', 'tasks.groop', '=', 't2.groop')
Но уже нужно присоеденить другие данные... и потому фильтр ->where("t2.image_tip",2)...

Но я уже нашёл решение! Изменил структуры базы... Вынес данные во вторую аблицу и тот-же самый запрос - только джоиню другую таблицу, а результат тот который мне нужен.

#2 Laravel 5.x » Запрос с leftjoin, НЕ выводит все записи, что не так ? » 16.02.2018 13:18:39

kiukishenkaec
Ответов: 3
Task::where("tasks.gdz_id", $gdz_id)
      ->where("tasks.sekktion_id",$sekktion_id)
      ->where("tasks.image_tip",1)
      ->leftJoin('tasks as t2', 'tasks.groop', '=', 't2.groop')
      ->where("t2.image_tip",2)
      ->get();

Получается результат:
1) Задание1 - Ответ1
2) Задание3 - Ответ3
3) Задание4 - Ответ4
4) Задание5 - Ответ5

НУЖЕН результат такой:
1) Задание1 - Ответ1
2) Задание2 -
3) Задание3 - Ответ3
4) Задание4 - Ответ4
5) Задание5 - Ответ5

Так тоже не помогло:

Task::where("tasks.gdz_id", $gdz_id)
      ->where("tasks.sekktion_id",$sekktion_id)
      ->where("tasks.image_tip",1)
      ->leftJoin('tasks as t2',function($join) {
          $join->on('tasks.groop', '=', 't2.groop')
          ->where("t2.image_tip",2);
      })
      ->get();

Тот же результат...
ЧТО НЕ ТАК ?????

Подвал раздела