Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Laravel - Wie schreibt man zwei Inner Joins mit einer count-Anweisung in Laravel-Syntax?

Also im Grunde sollte so etwas wie das Folgende funktionieren:

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();

Hinweis:Beim Gruppieren nach sollten Sie nach den eindeutigen Werten der Zeile gruppieren (z. B. dem Bezeichner). Wenn die Eindeutigkeit Ihrer Abteilungsnamen garantiert ist, können Sie auf die Auswahl und Gruppierung nach Department.id komplett verzichten.