So I'm trying to get the number of distinct pids on a query, but the returned value is wrong.

这就是我试图做的:

$ad->getcodes()->groupby('pid')->distinct()->count()

what returns the value "2", while the value it should return, should be "1".

As a workaround, I'm doing this:

count($ad->getcodes()->groupby('pid')->distinct()->get())

什么工作正常并返回"1"

Is there any rule where count and distinct cannot be on the same query? I find the workaround kind of "heavy", I would like to make the original query work :(

推荐答案

以下几点应该有用

$ad->getcodes()->distinct()->count('pid');

Laravel相关问答推荐

如何重置laravel ui密码

当未通过验证的字段是值数组时,Laravel$validator->;validator()方法不会引发异常

Laravel-如何按第三表关系对数据进行分类

Laravel复选框值更新

laravel vue 惯性分页器删除上一个和下一个链接

Laravel Eloquent,仅 Select 存在关系的行

PHP Laravel:如何设置或获取会话数据?

Laravel 5 - ErrorException 无法打开流:权限被拒绝

Heroku 上的 Laravel 队列工作者

如何判断是否在laravel中设置了cookie?

Laravel 干预图像 GD 库扩展

Laravel 5.4 - 注册后禁用自动登录

SQLSTATE [01000]:警告:1265 列的数据被截断(truncated)

Laravel 判断约束违规

如何在 Laravel 查询中使用多个 OR、AND 条件

在Lumen框架中启用会话

在 Laravel 中按用户名查找用户

Class类 App\Http\Controllers\Auth\Request 不存在.

Laravel hasManyThrough

Laravel - artisan不工作