Laravel : Select 和 GroupBy SQL 查询错误。多个 Selects 与 groupBy?可能吗?

Laravel : Select and GroupBy SQL Query Error. Multiple Selects with groupBy? Is it Possible?

我有 2 tables 评级和属性,我过了一个月并获得了两个用户的所有记录并计算了这个,我已经计算了这个记录,并按 user_id,但是在我的属性table中有一个用户名,加入这个table得到属性名,我的查询是

$months = \Request::get('month');

$records = DB::table("ratings")

    ->select(DB::raw("SUM(ratings.attribute_score) as score"))
    ->whereRaw('MONTH(ratings.created_at) = '.$months)
    ->join('users','ratings.user_id','=','users.id')
    ->groupBy('ratings.user_id')
    ->get();

dd($records);

然后得到 json 那样

但我想获取特定用户的名称和分数,但这里有多个 select 在此查询中不起作用如何使用多个 select 获取属性 table 记录?如果我正在使用这个查询。提前感谢开发者

->select(DB::raw("SUM(ratings.attribute_score) as score , ratings.user_id , attributes.attributes_name"))

使用这个 select 在这里不起作用它总是 return Jason 喜欢在 Sceenshot 中显示的分数。我如何使用 groupBy 来处理 select 的倍数?

使用它来获取带有分数计数的用户名。试试这个

$months = \Request::get('month');

$records = DB::table("ratings")
    ->select(DB::raw('SUM(ratings.attribute_score) as score, users.name as 
      user_name'))
    ->whereRaw('MONTH(ratings.created_at) = '.$months)
    ->join('users','ratings.user_id','=','users.id')
    ->groupBy('users.name')
    ->get();   
return view('attribute.show' , compact('records'));