laravel 中关于mysql groupby 之后count取值不对原因分析

PHP 投稿 26400 0 评论

laravel 中关于mysql groupby 之后count取值不对原因分析

今天碰到一个很奇葩的问题,卡了我很久。用laravel写查询,加了 GroupBy 之后再 count,和原生语句里统计的数量不对。搞了很久,终于知道原因了。

第一:GroupBy之后的Count返回的是分组后的第一组的数量

通过GroupBy分组后,再执行Count()函数返回的是:分组后数据,第一个分组的数量。

正确的方法应该是:

$count = VipCard::where('uid', $uid)->count(DB::raw('DISTINCT(serial_number)'));

编程笔记 » laravel 中关于mysql groupby 之后count取值不对原因分析

赞同 (118) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽