日期:2014-05-18 浏览次数:21235 次
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