Я сейчас царапаю голову этим.Laravel hasOne + group_by, получите сумму
Что у меня есть.
$entries = Meta::whereIn('settlement_id', [1])->groupBy('client_id')->get();
Meta::model()
имеет hasOne связь с другими таблицами, в моем примере с Sport
столом. С одним атрибутом в моем массиве я могу добиться того, чего хочу.
Так что в петле у меня есть мое поле $entry->Sport->amount
это прекрасно работает.
Что мне нужно.
$entries = Meta::whereIn('settlement_id', [1,2,3])->groupBy('client_id')->get();
Теперь, когда я расширяю свой массив с несколькими идентификаторами, я ожидаю, что $entry->Sport->amount
возвращает сумму всех идентификаторов. Но это не так.
Я не могу понять, что я делаю неправильно.
Вся помощь приветствуется.
Вы говорите, что он ожидает от него вернуть сумму всех идентификаторов, то, что делает * * он вернется в данный момент? – ntzm
Он возвращает значение первой найденной записи, а не сумму всех полей. – DavidCandreva