gpt4 book ai didi

elm - GroupBy 使用 Elm 中的记录列表

转载 作者:行者123 更新时间:2023-12-04 15:56:09 24 4
gpt4 key购买 nike

如果 Elm 函数定义采用记录列表并执行 groupby 操作(请参见下面的示例),它会是什么样子?使用 SQL 类比,我基本上是在尝试在 Elm 中实现 select last, sum(age) from table group by last

[{name= "John", last= "Smith", age= 10}
,{name="Jason", last= "Smith", age= 9}
, {name="Jane", last ="White", age =5}]

return [{last="Smith", age =19},
{last ="White", age =5}]

最佳答案

您可以使用 Dict.Extra.groupBy 执行初始分组,然后通过映射列表并对年龄求和来求和年龄:

import Dict.Extra exposing (groupBy)

familySumAges : List Person -> List Family
familySumAges =
groupBy .last
>> Dict.map (\_ -> List.map .age >> List.sum)
>> Dict.toList
>> List.map (uncurry Family)

关于elm - GroupBy 使用 Elm 中的记录列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48477364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com