-----------------Sqlserver表数据user--------------------------
表结构:
ID UserName CreateDate
1 James 2010-12-01
2 James 2010-12-01
3 James 2010-12-02
4 Beans 2010-12-02
5 Beans 2010-12-02
6 Beans 2010-12-02
7 Beans 2010-12-02
8 Jsewt 2010-12-02
9 Jsewt 2010-12-02
10 Jsewt 2010-12-02
11 Jsewt 2010-12-02
------------------需要结果--------------------------------
CreateDate:2010/12/01(日期分组) UserCount:1(1个用户) ViewCount:2 (总共2个访问)
CreateDate:2010/12/02(日期分组) UserCount:3(3个用户) ViewCount:8 (总共8个访问)
---------未实现的代码(差一个地方)-----------------------
//query里面是整个user的数据
//假设日期是2010/12/02,数据都已经按CreateDate分好了,就是UserCount这里不知道怎么写
var result = from p in query
group p by p.CreateDate into g
select new
{
g.Key,//这里是按日期分组的 2010/12/02(结果对)
ViewCount = g.Count()//这里是2010/12/02访问总数 8 (结果对)
UserCount =//这里怎么去除重复,然后统计结果为 3(怎么求出3??)
};
SQLLINQ
表结构:
ID UserName CreateDate
1 James 2010-12-01
2 James 2010-12-01
3 James 2010-12-02
4 Beans 2010-12-02
5 Beans 2010-12-02
6 Beans 2010-12-02
7 Beans 2010-12-02
8 Jsewt 2010-12-02
9 Jsewt 2010-12-02
10 Jsewt 2010-12-02
11 Jsewt 2010-12-02
------------------需要结果--------------------------------
CreateDate:2010/12/01(日期分组) UserCount:1(1个用户) ViewCount:2 (总共2个访问)
CreateDate:2010/12/02(日期分组) UserCount:3(3个用户) ViewCount:8 (总共8个访问)
---------未实现的代码(差一个地方)-----------------------
//query里面是整个user的数据
//假设日期是2010/12/02,数据都已经按CreateDate分好了,就是UserCount这里不知道怎么写
var result = from p in query
group p by p.CreateDate into g
select new
{
g.Key,//这里是按日期分组的 2010/12/02(结果对)
ViewCount = g.Count()//这里是2010/12/02访问总数 8 (结果对)
UserCount =//这里怎么去除重复,然后统计结果为 3(怎么求出3??)
};
SQLLINQ
解决方案 »
- 关于rss问题
- 传递参数的方式有多少种?下边的网址用get方式把参数传给哪个页面了?
- ????????????????大家觉得程序员应该不应该远离网游?????程序员必须要掌握的语言都有什么?
- Gridview的模板列中如何点击HyperLink或Linkbutton后打开文件,并且触发后台事件
- 高分求解,关于用IHttpHandler来判断用户权限的问题(附代码)
- 关于一个GridView完成数据绑定和搜索后数据绑定分页的问题
- js的一个小问题
- 继承一个webpart类,如何在这个新类中加入用户控件 ?
- 这是怎么回事啊??哪位高手能告诉我啊?谢谢先!!
- 我是新手,我好笨,急,关于DataGrid链接问题!
- mvc3.0问题
- 根据多个字段的总和统计得票排名列表
UserCount =g.GroupBy(x=>x.UserName).Count()
public class TestClass
{ public int ID { get; set; }
public string UserName { get; set; }
public DateTime CreateDate { get; set; }
}
List<TestClass> list = new List<TestClass>()
{
new TestClass(){ ID=1,UserName="James", CreateDate= Convert.ToDateTime("2010-12-01")},
new TestClass(){ ID=2,UserName="James", CreateDate= Convert.ToDateTime("2010-12-01")},
new TestClass(){ ID=3,UserName="James", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=4,UserName="Beans", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=5,UserName="Beans", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=6,UserName="Beans", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=7,UserName="Beans", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=8,UserName="Jsewt", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=9,UserName="Jsewt", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=10,UserName="Jsewt", CreateDate= Convert.ToDateTime("2010-12-02")},
new TestClass(){ ID=11,UserName="Jsewt", CreateDate= Convert.ToDateTime("2010-12-02")}
};
var result = from p in list
group p by p.CreateDate into g
select new
{
g.Key,
ViewCount = g.Count() ,
UserCount =g.GroupBy(x=>x.UserName).Count()
};
foreach (var t in result)
{
Console.WriteLine("CreateDate:" + t.Key + "\t" + "UserCount:" + t.UserCount + "\t" +"ViewCount:" + t.ViewCount);
}