计算 Laravel 表中的 user_id

问题描述

我想使用以下查询

SELECT `name`,COUNT(`user_id`) AS total,SUM(`status` = 'Done') as done 
    FROM posts GROUP BY `name`,`user_id`,`status`

但是当我实现这个...

Post::selectRaw('count(user_id) as total')
    ->selectRaw('SUM(status = "Done") as done')
    ->groupBy('name')
    ->get();

我的数据表没有显示任何数据。我的查询有问题吗?

解决方法

这应该有效:

$posts = DB::table('posts')->select(DB::raw('count(user_id) as total'))->selectRaw('SUM(status = "Done") as done')->groupBy('name')->get();

由于您没有提供有关模型、迁移或逻辑的任何信息,我猜您已正确设置了其他所有内容。

Mohamed Bdr 添加的链接也是很好的示例,我建议您查看它们。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...