Составьте групповую запись с avg в Eloquent - PullRequest
0 голосов
/ 06 мая 2018

У меня есть этот запрос SQL: SELECT *, AVG(value) as avg FROM users_has_project GROUP BY project_id И я перевел в Eloquent следующим образом:

Vote::select('AVG(value) as avg')->groupBy('project_id')->get();

Но я получил следующую ошибку:

SQLSTATE [42S22]: столбец не найден: 1054 Неизвестный столбец «AVG (значение)» в 'список полей' (SQL: выберите AVG(value) как avg из users_has_project группировка по project_id)

Ответы [ 2 ]

0 голосов
/ 06 мая 2018

Просто небольшое улучшение в ответе @ DigitalDrifter:

Vote::selectRaw('project_id, AVG(value) as avg')->groupBy('project_id')->get();
0 голосов
/ 06 мая 2018

Попробуйте использовать необработанный запрос для агрегата:

Vote::selectRaw('AVG(value) as avg')->groupBy('project_id')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...