как организовать CrossJoin результат с Laravel - PullRequest
0 голосов
/ 27 сентября 2019

Я получаю результат двух таблиц, используя перекрестное соединение.но когда я пытаюсь показать это в представлении, я получаю эту ошибку

Вызов функции-члена crossJoin () для массива

, так как организовать это в HTMLТаблица?выглядит как ниже.

barcode | desc | qty | branch1 | branch2 | branch3 | branch4
------------------------------------------------------------
123456  | lenovo| 100  |  null   |  null   |  null   |  null   
252666  | hp    | 100  |  null   |  null   |  null   |  null  
895566  | acer  | 70   |  null   |  null   |  null   |  null  
968411  | apple | 800  |  null   |  null   |  null   |  null  

вот мой код

$receiving = DB::select('select * from branch')
               ->crossJoin('allocation_stocks')->get();
return view('operation.home', ['data' => $receiving]);

таблица alloc_stocks

barcode | desc | qty 
----------------------
123456  | lenovo| 100  
252666  | hp    | 100 
895566  | acer  | 70   
968411  | apple | 800  

ветвь таблицы

brach_name|
-----------
branch1 
branch2 
branch3 
branch4 

Ответы [ 3 ]

2 голосов
/ 27 сентября 2019

Попробуйте этот запрос.Должно работать

$receiving = DB::table('branch')
               ->crossJoin('allocation_stocks')
               ->get();
return view('operation.home', ['data' => $receiving]);
0 голосов
/ 27 сентября 2019
You can see the query builder in laravel here.

Перекрестное соединение

$result = DB::table('branch')
               ->crossJoin('allocation_stocks')
               ->get();

return view('operation.home', ['data' => $result]);
0 голосов
/ 27 сентября 2019

Чтобы выполнить «перекрестное соединение», используйте метод crossJoin с именем таблицы, к которой вы хотите выполнить перекрестное соединение.

Перекрестные объединения создают декартово произведение между первой таблицей и объединенной таблицей:

$receiving = DB::table('branch')
    ->crossJoin('allocation_stocks')
    ->get();

См. Также:

Соединения

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