如何使用雄辩的模型查询来计算数据库表中的DUPLICATE列?
例如,在SQL中,有这个命令:
$noOfjobsFromSameCustomers = App\Workflow::count();
上面的代码将返回具有相似电子邮件地址的所有列中的名称。
我想要达到的目的是获得重复条目的COUNT,即
$noOfjobsFromSameCustomers = App\Workflow::notDistinct()->orderBy('cust_id')->count();
但是我需要一个额外的参数来指定cust_id(工作流表中的一列)是重复的,例如:
ID NAME EMAIL
1 John asd@asd.com
2 Sam asd@asd.com
3 Tom asd@asd.com
4 Bob bob@asd.com
5 Tom asd@asd.com
例如,如下表所示:
{{1}}
如何计算指定电子邮件地址(例如asd@asd.com)的重复次数?
答案 0 :(得分:2)
你可以通过原始查询获得这个
$result = DB::select( DB::raw(" select * from (
SELECT name, COUNT(email) as e_count
FROM users
GROUP BY email
)a where a.e_count > 1 ");
并将您的where条件放在此查询中 请参阅更多Larave website
答案 1 :(得分:2)
您可以使用 havingRow :
->havingRaw('COUNT(<columneName>) > 1')