c#的group操作与聚合函数的结合使用

   2024-09-30 2690
核心提示:在C#中,我们可以使用LINQ(Language Integrated Query)查询来实现对集合的分组(group)操作以及聚合函数(如Sum、Average、Mi

在C#中,我们可以使用LINQ(Language Integrated Query)查询来实现对集合的分组(group)操作以及聚合函数(如Sum、Average、Min、Max等)的结合使用

首先,假设我们有一个Person类,如下所示:

public class Person{    public int Id { get; set; }    public string Name { get; set; }    public int Age { get; set; }}

接下来,我们创建一个List<Person>来存储一些示例数据:

var people = new List<Person>{    new Person { Id = 1, Name = "Alice", Age = 30 },    new Person { Id = 2, Name = "Bob", Age = 25 },    new Person { Id = 3, Name = "Charlie", Age = 35 },    new Person { Id = 4, Name = "David", Age = 28 },    new Person { Id = 5, Name = "Eva", Age = 32 },};

现在,我们想要根据年龄对这些人进行分组,并计算每个年龄组的总年龄。我们可以使用LINQ查询和聚合函数结合GroupBy方法来实现这个需求:

var ageGroupResult = people    .GroupBy(p => p.Age)    .Select(g => new    {        AgeGroup = g.Key,        TotalAge = g.Sum(p => p.Age)    })    .ToList();

在这个查询中,我们首先使用GroupBy方法根据年龄对people列表进行分组。然后,我们使用Select方法来选择每个年龄组及其总年龄(使用Sum聚合函数计算)。最后,我们将结果转换为一个新的匿名类型列表并输出。

运行这段代码,你将得到以下输出:

AgeGroup = 25, TotalAge = 28AgeGroup = 28, TotalAge = 28AgeGroup = 30, TotalAge = 30AgeGroup = 32, TotalAge = 32AgeGroup = 35, TotalAge = 35

这样,我们就实现了C#中分组操作与聚合函数的结合使用。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号