当前位置: 首页 > 知识库问答 >
问题:

Laravel雄辩group by()也返回每个组的计数

居京
2023-03-14

我有一个表,其中包括一列浏览器版本。我只是想从记录集中知道每种浏览器有多少种。所以,我需要这样结束:总记录:10;InternetExplorer 8:2;铬25:4;火狐20:4。(总计10)

这是我的两便士:

$user_info = Usermeta::groupBy('browser')->get();

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

共有3个答案

万俟高峻
2023-03-14

谢谢安东尼奥,

我刚刚在末尾添加了lists命令,因此它只返回一个包含key和count的数组:

拉维尔4号

$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->lists('total','browser');

拉威尔5.1

$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->lists('total','browser')->all();

拉威尔5.2

$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->pluck('total','browser')->all();
景永春
2023-03-14

这适用于我(Laravel 5.1):

$user_info = Usermeta::groupBy('browser')->select('browser', DB::raw('count(*) as total'))->get();
爱海
2023-03-14

这对我有用:

$user_info = DB::table('usermetas')
                 ->select('browser', DB::raw('count(*) as total'))
                 ->groupBy('browser')
                 ->get();
 类似资料:
  • 我想使用Laravel Eloquent完成任务。我在网上搜索过,没有找到任何有说服力的东西。有些人将groupBy()查询与查询生成器一起使用,如以下链接 但是我想创建这样的查询风格: 此代码仅返回第一个的计数。但是我要计算所有的。

  • 我有一个表,其中包含,除其他列,一列浏览器版本。我只是想从记录中知道,每种类型的浏览器有多少。 我的代码是: 输出: 我想分组所有的浏览器,没有像这样的浏览器版本:

  • 我有两张桌子。 产品品牌 我试图用最多的产品返回前十大品牌型号。 我试过了。 但是它不返回孔模型,只返回 品牌 计数 我也试过 但是我得到了错误: SQLSTATE[42S22]:未找到列:“where子句”中的1054未知列“brands.id”(SQL:选择count(*)作为从whereid=

  • 嘿,伙计们,我是拉威尔的新朋友。我有这张桌子 我如何能够获取每个科目的is_correct列计数? 谢谢伙计们!

  • 我的客户通过订单订购了许多包裹。 我想退回包裹数量超过0且状态仅为成功的客户。但我不知道如何添加包裹状态的条件。目前,这份声明给了我一份有包裹的客户名单<代码>$customers=Customer::has('包裹','

  • 如何将以下查询转换为Laravel4雄辩ORM?