首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel雄辩的groupBy()和每组的返回计数

Laravel雄辩的groupBy()和每组的返回计数
EN

Stack Overflow用户
提问于 2013-08-30 12:35:30
回答 15查看 540.4K关注 0票数 171

我有一个表,其中包含一列浏览器版本。我只想从记录中知道每种浏览器有多少种。因此,我需要这样的结果:总记录: 10;I 8: 2;Chrome 25: 4;Firefox 20: 4。(加起来10)

这是我的两便士:

代码语言:javascript
复制
$user_info = Usermeta::groupBy('browser')->get();

当然,这只包含了3个浏览器,而不是每个浏览器的数量。我该怎么做?

EN

回答 15

Stack Overflow用户

回答已采纳

发布于 2013-08-30 13:11:37

这是为我工作的:

代码语言:javascript
复制
$user_info = DB::table('usermetas')
                 ->select('browser', DB::raw('count(*) as total'))
                 ->groupBy('browser')
                 ->get();
票数 336
EN

Stack Overflow用户

发布于 2016-07-20 10:00:11

这适用于我(Laravel 5.1):

代码语言:javascript
复制
$user_info = Usermeta::groupBy('browser')->select('browser', DB::raw('count(*) as total'))->get();
票数 52
EN

Stack Overflow用户

发布于 2015-08-11 15:34:48

谢谢安东尼奥

我刚在末尾添加了lists命令,所以它只返回一个带键和计数的数组:

Laravel 4

代码语言:javascript
复制
$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->lists('total','browser');

Laravel 5.1

代码语言:javascript
复制
$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->lists('total','browser')->all();

Laravel 5.2+

代码语言:javascript
复制
$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->pluck('total','browser');
票数 42
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18533080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档