Laravel selectRaw与联接的表数据

Ped*_*dro 4 php mysql laravel laravel-5

我正在使用以下内容汇总总计列:

$hive_count = Hive::where('active','true')
                      ->groupBy('hive_type_id')
                      ->selectRaw('sum(total) as sum, hive_type_id')
                      ->pluck('sum','hive_type_id');
Run Code Online (Sandbox Code Playgroud)

但是,我不想使用hive_type_id作为数组键,而是想从hive_types表(列“名称”)访问hive_type名称。我试过了hive_type_id.name,但这没有用。

型号:Hive和HiveType

谢谢你的帮助。

Zak*_*rki 5

我想从hive_types表(列“名称”)访问hive_type名称。

您必须hive_types在查询中加入表,才能访问name

$hive_count = DB::table('hives')
                  ->where('active','true')
                  ->join('hive_types', 'hives.hive_type_id', '=', 'hive_types.id')
                  ->groupBy('hive_type_id','hive_types.name')
                  ->selectRaw('sum(total) as sum, hive_types.name as name')
                  ->pluck('sum','name');
Run Code Online (Sandbox Code Playgroud)