使用eloquent的行和groupby的总和

时间:2016-02-15 12:38:27

标签: mysql laravel eloquent

拥有以下列:

O

如何使用雄辩的方式将按类别分组的评级作为给定日期范围内的用户数总和

category, rating, num_users, date_voted /*number of users*/

主表数据的示例

Category::groupBy('num_users') //returns the categories

我希望html表格具有类别与评级(1到5之间)的形式,例如

--------------------------------
category| rating| num_users| date_voted
---------------------------------------
Action  |5      |2         | 12-12-2015
Comedy  |2      |2         | 12-12-2015
Fantasy |3      |2         | 12-12-2015
Action  |4      |2         | 14-12-2015
Comedy  |5      |2         | 14-12-2015

2 个答案:

答案 0 :(得分:1)

如果你想按类别获得num个用户的总和,你可以使用:

Category::groupBy('category')
->selectRaw('sum(num_users) as num_users , category')
->get();

答案 1 :(得分:1)

可能会帮助你

Category::select(DB::raw('sum(users) as total_users'),'category')->groupBy('category')->get();