Så grundlæggende burde noget i stil med følgende virke:
DB::table('departments')
->join('users','users.dept_id','=','departments.id')
->join('absences','users.id','=','absences.user_id')
->select('departments.id','departments.deptStringName', DB::raw("COUNT(*)"))
->groupBy('departments.id','departments.deptStringName')
->get();
Bemærk:Når du grupperer efter, skal du gruppere efter rækkens unikke værdier (f.eks. identifikatoren). Hvis dine afdelingsnavne garanteret er unikke, kan du helt undlade at vælge og gruppere efter afdeling.id.