我希望 withCount 包含不存在关系的计数。
例如,假设我有一个名为 people
的表和一个名为 pets
的表。
people
有许多 pets
,但 pets
可以有一个 null people_id
。我想获取每个 people
的 pets
数量,但我也想包括没有 people_id 的
.pets
我知道我可以简单地执行 People::withCount('pets')->get()
操作,但这不包括 null pets
的计数 people_id
。
我正在寻找的结果是这样的:
person_name | pets_count
John | 2
Mike | 3
Joan | 0
NULL | 20
我希望这是有道理的。
最佳答案
在这种情况下,您可以使用ROLLUP
。试一试。它可能对你有帮助。
People::withCount('pets')->groupBy(\DB::raw('id WITH ROLLUP'))->get();
了解更多请查看this
关于php - Laravel withCount 包含 null 关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55854972/