如何使用聚合运算符转换 linq 查询输出并将不同的输出显示到列表?
这是我存储在数据库中的内容,它是通过 linq 查询提取的:
Date Hours
07/29/2013 1.3
07/29/2013 2.0
07/30/2013 3.1
07/31/2013 0.1
07/31/2013 5.2
08/01/2013 1.1
08/01/2013 1.1
08/01/2013 2.2
08/02/2013 3.3
08/02/2013 4.0
08/03/2013 2.1
这是我想要的数据:
Day Hours
07/29/2013 3.3
07/30/2013 3.1
07/31/2013 5.3
08/01/2013 4.4
08/02/2013 7.3
08/03/2013 2.1
非常感谢任何帮助
最佳答案
使用GroupBy
和Sum
:
var result = db.Table
.GroupBy(r => r.Date)
.Select(g => new{ Day=g.Key, Hours=g.Sum(r=> r.Hours) })
如果 Date
实际上是一个 DateTime
,您应该使用 r.Date.Date
来删除时间部分。
关于c# - 聚合和区分 linq 查询输出以列出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18005401/