【问题标题】:LINQ Group By on DateTime [duplicate]LINQ Group By on DateTime [重复]
【发布时间】:2017-08-29 10:04:38
【问题描述】:

我有一个表,其中有一列具有不同的 smalldatetime 值。 我会按月份和年份分开结果,如下所示:

2016 年 1 月:....

....

2017 年 8 月:....

2017 年 9 月:...

...

我做过这样的事情:

var query = db.Table.GroupBy(q => q.date.Value.Month);

但它仅按月份而不是按年份分开,因此我无法区分例如 2016 年 8 月和 2017 年 8 月。

有人可以帮我吗?

【问题讨论】:

  • 试试.GroupBy(q => new {Month = q.date.Value.Month, Year = q.date.Value.Year})...
  • 您要保留组内的原始日期,还是只保留月/年。

标签: c# linq group-by


【解决方案1】:

这应该符合您的目的:

    var groupedDates = dates.GroupBy(d => new { d.Date.Year, d.Date.Month }).SelectMany(g => g.ToList());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-08
    • 2011-09-15
    • 1970-01-01
    • 2011-07-11
    • 2020-01-22
    • 1970-01-01
    • 1970-01-01
    • 2017-02-06
    相关资源
    最近更新 更多