Laravel 一条 SQL 如何 count 多个字段,Laravel 一条 sql 查询每个分类的数量

在我们做统计的时候,我们常常需要计算各种分类的条数,有的人就迷茫了,我要计算10个分类,就要写10条SQL?那这也太麻烦了吧?群里一个朋友就是这么写的,我们来看一下他的SQL
一. 错误案例

5BB27456ADD5FD7315933939E9E0B5D8.png


这样写4条SQL,如果我是100个分类,我的天,你得疯掉吧?
二. 解决办法
那行,我们来解决一下,这个时候我选择用一下原始表达式:
$users = DB::table('notice')
                // notice_sort是为了看分类,可不要
                ->select(DB::raw('count(*) as user_count, notice_sort'))
                ->groupBy('notice_sort')
                ->get();
dump($users);

然后我们看一下输出的结果

C652055D-6058-4F21-8FDD-27D6CFC8B7B2.png


我们再来看一下SQL,问题解决了:
select count(*) as user_count, notice_sort from `notice` group by `notice_sort`

原文出处: laravel 一条SQL如何count 多个字段,laravel一条sql查询每个分类的数量
问题交流群 :562864481

0 个评论

要回复文章请先登录注册