php - 如何通过分组来计算价值
问题描述
我是 Laravel 的新手,我需要通过分组来计算价值,例如这些值
male male male female female
我需要计算列中有多少个1,我希望结果是男性:3,女性:2
我已经尝试过这种方法,但它没有按预期工作
Patient::select('gendar')->groupBy('gendar')->count()
解决方案
有几种方法可以做你想做的事,但最后,你需要添加一个自定义选择来计算分组值。为此,Laravel 提供了 aselectRaw
或DB::raw('...')
helper。
您的一些选项例如:
$patients = Patient::select('gendar', DB::raw('count(gendar) as count'))
->groupBy('gendar')
->get()
或者
$patients = Patient::select('gendar')
->addSelect(DB::raw('count(gendar) as count'))
->groupBy('gendar')
->get()
甚至
$patients = Patient::selectRaw('gendar, count(gendar) as count')
->groupBy('gendar')
->get()
你可以在官方文档中阅读更多关于 Laravel 的原始方法:https ://laravel.com/docs/8.x/queries#raw-methods
推荐阅读
- android - Clang 静态代码分析不会为使用 Android.bp 构建的模块创建 .plist 结果
- extjs - 有没有办法根据网格中单元格的背景颜色创建列过滤器
- amazon-dynamodb - dynamodb 时间戳保留名称表达式属性名称
- typescript - 类型缺少以下属性
- mysql - 如何在没有空输出的情况下通过多选联合所有和分组?
- regex - 如何处理字符串中的自定义标签并记录有关格式的信息
- google-apps-script - 数据更改时自动对行进行排序
- r - 按日期和变量对数据框进行排序
- c# - 在未激活 .NET 3.5 Windows 功能的情况下运行 C# exe
- react-native - 如何在 react-native viewpager 中使用动画更改背景颜色?