【发布时间】:2022-08-15 07:35:29
【问题描述】:
嗨,伙计们,我有一个问题,我想计算一个具有 3 个值的列,该列是它接受的结果,被拒绝和待处理,我想在三张卡上计算它们中的每一个,无论如何我都在使用laravel 8 btw 谢谢你的任何提示
标签: laravel
嗨,伙计们,我有一个问题,我想计算一个具有 3 个值的列,该列是它接受的结果,被拒绝和待处理,我想在三张卡上计算它们中的每一个,无论如何我都在使用laravel 8 btw 谢谢你的任何提示
标签: laravel
通常,您可以使用某种条件聚合。这是一个应该可以工作的原始 MySQL 查询:
SELECT grp,
SUM(col = 'accepted') AS num_accepted,
SUM(col = 'refused') AS num_refused,
SUM(col = 'pending') AS num_pending
FROM yourTable
GROUP BY grp;
【讨论】:
YourModel::groupBy('col')
->selectRaw("SUM(`col` LIKE 'value1') as value1, SUM(`col` LIKE 'value2') as value2, SUM(`col` LIKE 'value3') as value3")
->get();
在SUM 你可以写任何条件。
【讨论】:
{{ App\Models\studie::where(['council opinion' => 'rejected'])->get()->count() }} 这就是我从你的解释中得到的
【讨论】: