排名
7
文章
192
粉丝
15
评论
16
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术

根据linq表达式
- //实例化数据
- SchoolContext schoolcontext = new SchoolContext();
-
-
- //linq表达式
- var Info = from scroe in schoolcontext.Scroe
- //根据ScroeName排序
- group scroe by scroe.ScroeName into scroetemp
- select new
- {
- //Key代表排序的那个字段
- scroetemp.Key,
- //求和
- sum = scroetemp.Sum(a => a.ScroeNum),
- //最大值
- max = scroetemp.Max(a => a.ScroeNum),
- //最小值
- min = scroetemp.Min(a => a.ScroeNum),
- };
根据lamdba表达式(GroupBy关键字)
- //实例化数据
- SchoolContext schoolcontext = new SchoolContext();
-
- var Info = schoolcontext.Scroe.GroupBy(a => a.ScroeName).Select(scroetemp => new {
- //Key代表排序的那个字段,多个字段排序则通过Key点出该字段(Key.ScroeName)
- ScroeName = scroetemp.Key,
- sum = scroetemp.Sum(a => a.ScroeNum),
- max = scroetemp.Max(a => a.ScroeNum),
- min = scroetemp.Min(a => a.ScroeNum),
-
- });
示例(先查询,在分组)
- //三表联查
- var Info = schoolcontext.UserInfo.Join(schoolcontext.Parents, a => a.Sid, b => b.Uid, (a, b) => new
- {
- User = a,
- father = b.Father,
- mather = b.Mather
- }).Join(schoolcontext.Scroe, a => a.User.Sid, b => b.Uid, (a, b) => new
- {
- Sid = a.User.Sid,
- UserName = a.User.UserName,
- Scroename = b.ScroeName,
- Scroenum = b.ScroeNum,
- Father = a.father,
- Mather = a.mather
- //根据查询的结果进行分组
- }).GroupBy(a => new { a.Sid, a.Father, a.Mather, a.UserName }).Select(temptable => new
- {
- Sid = temptable.Key.Sid,
- UserName = temptable.Key.UserName,
- Sum = temptable.Sum(a => a.Scroenum),
- Min = temptable.Min(a => a.Scroenum),
- Max = temptable.Max(a => a.Scroenum),
- Avg = temptable.Average(a => a.Scroenum),
- Father = temptable.Key.Father,
- Mather = temptable.Key.Mather,
- }).ToList();
排序 升序(OrderBy)降序(OrderByDescending)
- //升序(OrderBy
- Info = Info.OrderBy(a => a.Sum).ToList();
- //降序(OrderByDescending)
- Info = Info.OrderByDescending(a => a.Sum).ToList();
评价