Laravel 根据表中字段进行groupBy分组,且查询每个组内的数量,并排序


所求: 根据用户的浏览日志表,找到用户最喜欢的栏目类型(栏目由频道类型确定)

表中字段:

 

 

分析:在user_id确定的情况下,用两个字段,频道(channel_id)和栏目(column_id)进行分组,找到组内总记录数最多的组,取其所需要的字段(栏目column_id)

可以这样进行处理:

重点理解;

  ->select('channel_id', 'column_id', DB::raw('count(*) as num'))   其中的字段是我们所需要返回的字段(看下方的打印结果)

  ->groupBy('channel_id', 'column_id') 是按其中的两个字段进行分组

打印结果:

 

此时进行并排序:

打印结果:此时即为组内总数最多的组的所需字段

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM