Как переделать SQL-запрос в Query Builder - PullRequest
0 голосов
/ 01 ноября 2018

Рабочий код

$result = DB::select('SELECT 
        galleries.user_id, 
        galleries.image,
        galleries.title 

        FROM galleries

        LEFT JOIN gallery_master ON gallery_master.gallery_id = galleries.id 

        WHERE gallery_master.master_id = 5

        ORDER BY galleries.id DESC');

Я пытаюсь переделать, и я получаю ошибку

$result = DB::table('galleries')
        ->leftJoin('gallery_master', 'gallery_master.gallery_id', '=', 'galleries.id ')
        ->select('galleries.user_id', 'galleries.image', 'galleries.title')
        ->where('gallery_master.master_id' = '5')
        ->paginate(20);

Error

 "SQLSTATE[42S22]: Column not found: 1054 Unknown column 'galleries.id ' 
in 'on clause' 
(SQL: select count(*) as aggregate from `galleries` 
left join `gallery_master` on `gallery_master`.`gallery_id` = `galleries`.`id `)

Я не знаю, как это будет работать

1 Ответ

0 голосов
/ 01 ноября 2018

Пожалуйста, удалите пробел из 'galleries.id'

попробуйте ниже запроса

$result = DB::table('galleries')
        ->select('galleries.user_id', 'galleries.image', 'galleries.title')
        ->leftJoin('gallery_master', 'gallery_master.gallery_id', '=', 'galleries.id') // from here
        ->where('gallery_master.master_id' = '5')
        ->paginate(20);
...