Как использовать groupBy для обобщения данных - PullRequest
0 голосов
/ 06 марта 2020

У меня проблема с суммированием данных (это как сводная таблица в Excel)

У меня есть таблица сотрудников с моделью Employee

Здесь код для поиска данных в указанном c range

$Latelist = Employee::whereBetween('date', [$searchFrom, $searchUntil])
    ->where('clockin', '!=', '')
    ->where('late', '!=', '')
    ->get();

Мой вопрос заключается в том, как суммировать данные в виде сводной таблицы в Excel?

Удалять несколько имен, чтобы иметь имя , один раз и totalLate.

Выходные данные должны быть

name    | totalLate
-------------------------
name1   | 3
name2   | 2
name3   | 5

Спасибо

1 Ответ

3 голосов
/ 06 марта 2020

Вы можете использовать groupBy и SUM для одного и того же

$Latelist      = Employee::whereBetween('date', [$searchfrom,$searchuntil])
        ->where('clockin', '!=' , "")
        ->where('late', '!=' , "")
        ->selectRaw("SUM(late) as totalLate") // add this
        ->groupBy("name") // add this

            ->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...