Csharp/C#教程:C#LINQ计数元素与DISTINCT分享


C#LINQ计数元素与DISTINCT

我有一组KeyValuePair项目,其中DateTime为键,字符串为value。 基本上我的数据看起来像:

12/07/2013 - 10220 12/07/2013 - 10220 12/07/2013 - 12220 12/07/2013 - 11240 12/07/2013 - 15220 13/07/2013 - 23220 13/07/2013 - 35620 14/07/2013 - 15620 14/07/2013 - 15620 

我想列出我每天有多少项(不同)。 所以查询会导致:

 12/07/2013 - 4 13/07/2013 - 2 14/07/2013 - 1 

使用group by

 var dateGrouped = dates.GroupBy(x => x.Key) .Select(x => new { Date = x.Key, Values = x.Distinct().Count() }); 

以下是完整示例的解决方案

上述就是C#学习教程:C#LINQ计数元素与DISTINCT分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

  var list = new[] { new {Date = new DateTime(2013,07,12), value = 10220}, new {Date = new DateTime(2013,07,12), value = 10220}, new {Date = new DateTime(2013,07,12), value = 12220}, new {Date = new DateTime(2013,07,12), value = 11240}, new {Date = new DateTime(2013,07,12), value = 15220}, new {Date = new DateTime(2013,07,13), value = 23220}, new {Date = new DateTime(2013,07,13), value = 35620}, new {Date = new DateTime(2013,07,14), value = 15620}, new {Date = new DateTime(2013,07,14), value = 15620}, }; var res = from l in list group l by new { l.Date } into g select new { g.Key.Date, value = g.Distinct().Count() }; foreach (var item in res) { Console.WriteLine(item.Date + " " + item.value); } 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1015384.html

(0)
上一篇 2021年12月30日
下一篇 2021年12月30日

精彩推荐