首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用LINQ进行分组和求和(on conditions)

使用LINQ进行分组和求和是一种在.NET开发中常见的数据操作技术。LINQ(Language Integrated Query)是.NET框架中的一组语言扩展,它允许开发人员在编写代码时使用类似于SQL的查询语句对数据进行查询和操作。

分组和求和是常用的聚合操作,可以通过LINQ来轻松实现。

在LINQ中,可以使用group by关键字对数据进行分组,然后使用Sum()函数对分组后的数据进行求和。以下是使用LINQ进行分组和求和的示例代码:

代码语言:txt
复制
var data = new List<Person>
{
    new Person { Name = "John", Age = 30, Salary = 5000 },
    new Person { Name = "Alice", Age = 25, Salary = 4000 },
    new Person { Name = "Bob", Age = 35, Salary = 6000 },
    new Person { Name = "Alice", Age = 28, Salary = 4500 },
    new Person { Name = "John", Age = 32, Salary = 5500 }
};

var groupedData = from person in data
                  group person by person.Name into g
                  select new
                  {
                      Name = g.Key,
                      TotalSalary = g.Sum(p => p.Salary)
                  };

foreach (var group in groupedData)
{
    Console.WriteLine("Name: " + group.Name);
    Console.WriteLine("Total Salary: " + group.TotalSalary);
    Console.WriteLine();
}

以上代码首先定义了一个Person类,然后创建了一个包含多个Person对象的列表。接下来使用LINQ查询语法对数据进行分组和求和,根据Name属性进行分组,并使用Sum()函数对每个分组的Salary属性进行求和。最后,通过遍历结果集,输出每个分组的名称和总薪资。

这种使用LINQ进行分组和求和的方式适用于各种数据集合,如数据库查询结果、内存中的集合等。

推荐的腾讯云相关产品和产品介绍链接地址:

这些腾讯云产品可以帮助开发人员构建和部署云计算相关的应用程序,并提供稳定可靠的基础设施支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

共14个视频
CODING 公开课训练营
学习中心
本训练营包含 7 大模块,具体为敏捷与瀑布项目管理、代码管理、测试管理、制品管理、持续部署与应用管理。从 DevOps 全链路上每个模块的业界理念和方法论入手,以知其然并知其所以然为设计理念,并结合 CODING 平台的工具实操教学,给出规范示例,不仅能帮助学习者掌握 DevOps 的理论知识,更能掌握 CODING 平台各产品模块的正确使用方式,并进行扩展性的实践。
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-1
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-2
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-3
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共18个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-4
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
领券