То, что вы пытаетесь сделать с помощью оператора SQL, может быть легко выполнено Eloquent Laravel.
Сначала давайте создадим модель:
php artisan make:model Planning
Следуя соглашениям, мы не используемPlanning
но больше похоже на Plan
, но для простоты я буду использовать Planning
.
class Planning extends Model
{
public $table = 'planning'
public function merging_vendor_project(){
return $this->hasMany(MergeVendorProject::class)
}
}
Теперь вы можете просто withCount
на модели, например:
$id = 1
Planning::where('id', $id)->select('id', 'name', 'tender_name', 'merging_vendor_project_count')->withCount('merging_vendor_project')->get();
Бум ... Вот, пожалуйста.Ваш начальный запрос сделан в Laravel style
.Тейлор Отвелл будет гордиться тем, что вы используете Eloquent, а не DB::select