日期:2014-05-18 浏览次数:21094 次
var query = from p in DB.你的表 group p by p.时间.Value.Year into g select new { g.Key ,count = g.Count()};
------解决方案--------------------
static void Main(string[] args)
{
DataTable dt = new DataTable();
dt.Columns.Add("datetime", typeof(DateTime));
dt.Rows.Add("2010.1.2");
dt.Rows.Add("2010.2.3");
dt.Rows.Add("2010.3.4");
dt.Rows.Add("2010.3.5");
dt.Rows.Add("2011.5.5");
dt.Rows.Add("2011.5.7");
dt.Rows.Add("2011.6.1");
var source= dt.AsEnumerable().GroupBy(t => t.Field<DateTime>("datetime").ToString("D").Substring(0, 5));
foreach (var s in source)
{
Console.WriteLine(s.Key+" "+s.Count());
foreach(var temp in s)
{
Console.WriteLine(temp.Field<DateTime>("datetime").Month+"月"+temp.Field<DateTime>("datetime").Day+"日");
}
}
Console.ReadLine();
}
------解决方案--------------------
DataTable dtime = new DataTable(); dtime.Columns.Add("dtime", typeof(DateTime)); dtime.Rows.Add("2010.1.2"); dtime.Rows.Add("2010.2.3"); dtime.Rows.Add("2010.3.4"); dtime.Rows.Add("2010.3.5"); dtime.Rows.Add("2011.5.5"); dtime.Rows.Add("2011.5.7"); dtime.Rows.Add("2011.6.1"); var datequery = from td in dtime.AsEnumerable() group td by td.Field<DateTime>("dtime").Year into g select g; foreach (var sk in datequery) { Console.WriteLine(sk.Key + " 年 " + sk.Count()); foreach (var sk1 in sk.GroupBy(m => m.Field<DateTime>("dtime").Month)) { Console.WriteLine(sk1.Key + " 月 " + sk1.Count()); } } /* 2010 年 4 1 月 1 2 月 1 3 月 2 2011 年 3 5 月 2 6 月 1 */
------解决方案--------------------
DataTable dt = new DataTable("test"); dt.Columns.Add(new DataColumn("dtime", typeof(DateTime))); dt.Rows.Add("2010.1.2"); dt.Rows.Add("2010.2.3"); dt.Rows.Add("2010.3.4"); dt.Rows.Add("2010.3.5"); dt.Rows.Add("2011.5.5"); dt.Rows.Add("2011.5.7"); dt.Rows.Add("2011.6.1"); var group1 = dt.AsEnumerable().GroupBy(r => r.Field<DateTime>("dtime").Year); foreach (var g in group1) { Console.WriteLine("{0}年 {1}", g.Key, g.Count()); var group2 = g.GroupBy(r => r.Field<DateTime>("dtime").Month); foreach (var g2 in group2) { C