Wei*_*ang -2 php collections subquery dataset laravel
[
{
"agent_id": "D01",
"amount": "2"
},
{
"agent_id": "D01",
"amount": "2"
},
{
"agent_id": "A01",
"amount": "1"
},
{
"agent_id": "A01",
"amount": "1"
},
]
Run Code Online (Sandbox Code Playgroud)
[
{
"agent_id": "D01",
"amount": "4"
},
{
"agent_id": "A01",
"amount": "2"
},
]
Run Code Online (Sandbox Code Playgroud)
你好,有一个原始数据集,有 4 个集合,如上图所示。我试图用 group byagent_id和 sum of the来转换数据amount。
我计划使用子查询 likes select agent_id, sum(amount) from (Dataset) group by agent_id,但是我不知道如何在 laravel 子查询中实现它。任何人都可以指导我或提供一些建议。欣赏它。
如果数据是通过数据集或 api 调用提供的,那么您可以使用 Laravel Collection 方法来操作并获得所需的输出
//Assuming that the data is in array format
$output = collect($data)
->groupBy('agent_id')
->map(
fn($records, $agent) => ['agent_id' => $agent, 'amount' => $records->sum('amount')]
)
->values()->all();
Run Code Online (Sandbox Code Playgroud)