У меня есть таблица «master», допустим, что-то вроде:
id autoincrement
name varchar(10)
category integer
Затем у меня есть таблица «detail», скажем:
id autoincrement
master_id integer
qty integer
Я хочусделать LEFT JOIN, как:
SELECT * FROM master
LEFT JOIN detail ON master.id = detail.master_id
WHERE category=1
Этот запрос производит именно то, что я хочу в SQL: таблица со всеми основными записями, даже если они не имеют детализации, в этом случае я получу столбцы детализациис NULL, что является правильным.
Теперь в Laravel я хочу сделать что-то вроде:
$records = Master::where('category', '=', 1)
->leftJoin('detail', 'master.id', '=', 'detail.master_id')
Если таблица сведений пуста, она возвращает идентификатор как NULL
Я думаю, что это потому, что он возвращает id
дважды, сначала master.id
, а затем второй id
, который приходит из таблицы сведений, конечно, NULL
Так как я могу псевдонимпервый (или второй идентификатор) для доступа к нему?