我有一个像下面这样的查询,以获得用户关系上的打孔计数,然后想添加where子句来检查计数是否大于3,或者只获得打孔计数大于3的用户。
$repeatedlyLatemark = User::withCount(['punches'=> fn($q)=> $q
->where('is_latemark', '1')
->whereDate('punch_date', '>=', Carbon::today()->startOfMonth()->toDateString())
->whereDate('punch_date', '<=', Carbon::today()->endOfMonth()->toDateString())
])
->having('punches_count', '>', '3')
->when(!$is_admin, fn($q)=> $q->where('department_id', $authUser->department_id) )
->when($ward, fn($q)=> $q->where('ward_id', $ward))
->count();
1条答案
按热度按时间ddrv8njm1#
注意:使用整数,而不是字符串'3'