gpt4 book ai didi

c# Dynamic.Linq - groupby 然后按条件选择

转载 作者:行者123 更新时间:2023-11-30 21:17:44 26 4
gpt4 key购买 nike


我以为这很容易,但我真的很挣扎。

我有一个具有此架构的表:
名称、日期、值

这是我要实现的目标:

  1. 按“姓名”对所有行进行分组
  2. 从该组中选择“日期”的“值”最大的

#1 很容易通过 GroupBy("Name","it") 实现但是,现在……?
如何查询分组结果???

谢谢大家

最佳答案

我根据您的问题做出的假设之一是“日期是最大的”,您的意思是每个日期都是最新的。

var data = new List<Data>
{
new Data() {Name = "one3", Date = new DateTime(2001, 11, 11), Value = 7},
new Data() {Name = "one2", Date = new DateTime(2001, 11, 11), Value = 111},
new Data() {Name = "one2", Date = new DateTime(2011, 11, 11), Value = 7},
};

var result = data.GroupBy(x => x.Name).Select(grouping => grouping.OrderByDescending(x => x.Date).Take(1).FirstOrDefault()).ToList();

我确定可能有更好的方法来执行 linq 查询,但我希望这至少能为您指明正确的方向:-)

关于c# Dynamic.Linq - groupby 然后按条件选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4638625/

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