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

LINQ - Group by with SUM IF

LINQ (Language Integrated Query) 是一种在.NET平台上进行数据查询和操作的统一编程模型。它提供了一种简洁、直观的方式来查询和操作各种数据源,包括对象集合、数据库、XML文档等。

Group by with SUM IF 是一种在LINQ中进行分组并计算总和的操作。它允许我们根据指定的条件对数据进行分组,并在每个分组中计算满足条件的元素的总和。

以下是一个示例代码,演示如何使用LINQ进行Group by with SUM IF操作:

代码语言:txt
复制
var data = new List<Person>
{
    new Person { Name = "Alice", Category = "A", Amount = 100 },
    new Person { Name = "Bob", Category = "B", Amount = 200 },
    new Person { Name = "Alice", Category = "A", Amount = 300 },
    new Person { Name = "Bob", Category = "B", Amount = 400 },
    new Person { Name = "Alice", Category = "B", Amount = 500 }
};

var result = data.GroupBy(p => p.Name)
                 .Select(g => new
                 {
                     Name = g.Key,
                     TotalAmount = g.Where(p => p.Category == "A").Sum(p => p.Amount)
                 });

foreach (var item in result)
{
    Console.WriteLine($"Name: {item.Name}, Total Amount: {item.TotalAmount}");
}

在上述示例中,我们首先创建了一个包含Person对象的数据集合。然后,我们使用LINQ的GroupBy方法根据Name属性对数据进行分组。接下来,我们使用Select方法选择每个分组的Key(即Name)和满足条件(Category为"A")的元素的Amount总和。最后,我们通过foreach循环打印结果。

这个示例中的Person类可以定义如下:

代码语言:txt
复制
public class Person
{
    public string Name { get; set; }
    public string Category { get; set; }
    public int Amount { get; set; }
}

这个示例演示了如何使用LINQ进行Group by with SUM IF操作。在实际应用中,这种操作可以用于对数据进行分组并计算满足特定条件的元素的总和,例如统计每个人在特定类别下的总金额。

腾讯云提供了云原生数据库TencentDB for TDSQL,它是一种高性能、高可用的云原生数据库服务,适用于各种规模的应用场景。您可以通过以下链接了解更多关于TencentDB for TDSQL的信息:TencentDB for TDSQL产品介绍

请注意,以上答案仅供参考,具体的推荐产品和链接可能需要根据实际情况进行调整。

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

相关·内容

19分27秒

MySQL教程-22-分组查询group by

31分29秒

尚硅谷-40-GROUP BY的使用

6分3秒

146-GROUP BY优化、分页查询优化

13分47秒

76_尚硅谷_Hive优化_Group By

4分48秒

104_Nacos之Group分组方案

7分54秒

90_Stream之group解决消息重复消费

11分28秒

013_尚硅谷_Table API和Flink SQL_Group Windows

16分15秒

014_尚硅谷_Table API和Flink SQL_Group Windows代码实现

4分13秒

20. 尚硅谷_佟刚_JPA_JPQL_ORDER BY 和 GROUP BY.avi

9分58秒

52_ClickHouse高级_数据一致性_通过Group by去重

16分9秒

Python 人工智能 数据分析库 35 SQL语句加强篇 5 group by 学习猿地

7分29秒

032-直播间模块-退出群聊

领券