Я думаю, вы думаете о том, чтобы сделать что-то вроде
$query = YearModel::with([
'brandModel',
'brandModel.brand',
]
);
if (!$year) {
$query = $query->whereRaw('column_one', 'column_2');
}
$result = $query->get();
Эта нить может вам помочь. Возможно, вам придется изменить запрос в зависимости от структуры вашей таблицы.
Пример в тинкере
>>> App\models\Student::whereRaw('standard_id', 'section_id')->get()
=> Illuminate\Database\Eloquent\Collection {#3225
all: [
App\models\Student {#3226
id: 1,
first_name: "Farhan",
last_name: "Pasha",
gender: "m",
date_of_birth: "2001-02-02",
roll_number: 1,
standard_id: 1,
section_id: 1,
school_id: 1,
photo: "",
created_at: "2019-10-07 07:36:21",
updated_at: "2019-10-10 10:42:37",
},
App\models\Student {#3213
id: 2,
first_name: "Mohameed",
last_name: "Khalil",
gender: "m",
date_of_birth: "2013-05-27",
roll_number: 2,
standard_id: 1,
section_id: 1,
user_id: 1,
school_id: 1,
photo: "",
created_at: "2019-10-14 07:15:10",
updated_at: "2019-10-14 07:15:10",
},
],
}
>>>