Linq无聊练习系列5--OrderBy ,Groupby练习
/**************OrderBy ,Groupby练习*******************/
//按学生的总分数按降序排列排序
var list = from s in ctx.T_Student
join c in ctx.T_Score
on s.stuNumber
equals c.stuNumber
into temp
from t in temp
orderby temp.Sum(k => k.score) descending
select new {
stuName = s.stuName,
scoreSum = temp.Sum(k=>k.score)
};
//对学生的年龄和姓名进行排序
var list1 = from s in ctx.T_Student
orderby s.stuSex,s.stuName descending
select s;
//对于上边的可以用lambda进行简化
var list2 = ctx.T_Student.OrderBy(s => s.stuAge).ThenBy(k=>k.stuName);
//也可以用连续的orderBy进行排序,不过级联方式是逆序,上边的list2可以这样表示
var list3 = ctx.T_Student.OrderBy(s => s.stuName).OrderBy(k=>k.stuAge);
//对orderby排序要注意的地方是只能对基本数据类型进行排序,不能对类型,以及匿名类进行排序,否则的话会抛异常
//每门课程分数最高的分数,并按课程号进行排序
var list4 = from s in ctx.T_Score
group s by s.courceNumber
into g
orderby g.Key
select new
{
courceNumber = g.Key,
coreForCourse = from f in g
where f.score == g.Max(n => n.score)
select f
};
//下面着重对groupby进行案列练习,对分数按课程号进行分组
var list5 = from s in ctx.T_Score
group s by s.courceNumber
into temp1
select temp1;
//每门课程的最高分数
var list6 = from s in ctx.T_Score
group s by s.courceNumber
into temp1
select new {
courseNumber = temp1.Key,
maxCourece = temp1.Max(k=>k.score)
};
//分组的条件也可以是自定义的表达式,如下
var list7 = from s in ctx.T_Score
group s by s.score + 10
into g
select g;
//也可以对多列进行分组
var list8 = from s in ctx.T_Score
group s by new
{
s.courceNumber,
s.stuNumber
} into g
select new {
g.Key,
g
};
Linq无聊练习系列5--OrderBy ,Groupby练习的更多相关文章
- Linq无聊练习系列8---开放式并发事务,null和 DateTime,string操作练习
/*********************开放式并发事务,null和 DateTime,string操作练习**********************************/ //所谓并发,就是 ...
- Linq无聊练习系列6--Any/All/Contains/Concat/Union/Intersect/Except/take/skip/SqlMethods操作练习
/*********************Any/All/Contains/Concat/Union/Intersect/Except/take/skip/SqlMethods操作练习******* ...
- Linq无聊练习系列1--where练习
linq主要有3种,linq to sql,linq to XML,Linq to Object linq to sql. 这里没有通过相应的类,生成相应的数据库中的表.没有用流行的编码优先. 只是为 ...
- Linq无聊练习系列7----Insert,delete,update,attach操作练习
/*********************Insert,delete,update,attach操作练习**********************************/ ...
- Linq无聊练习系列4--join练习
/**************join 练习*******************/ //对于1对多关系 var list =from c in ctx.T ...
- Linq无聊练习系列3--聚合函数练习
/**************聚合函数 练习*******************/ //求学生的总数量 var list = ctx.T_Student. ...
- Linq无聊练习系列2--select/distinct练习
void dataBindByWhere() { /**************select/distinct 练习*******************/ //获 ...
- EF C# ToPagedList方法 The method 'Skip' is only supported for sorted input in LINQ to Entities. The method 'OrderBy' must ……
报错信息:The method 'Skip' is only supported for sorted input in LINQ to Entities. The method 'OrderBy' ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
随机推荐
- c++界面设计皮肤工具
1. 先进行软件界面设计,确定软件界面美术包装方案 2. 依据软件界面美术设计装方案制作对应的图片,图片格式请參见AUDK的帮助文档或皮肤工具SkinTool 的 Demo 3. 打开皮肤工具 Ski ...
- 初识Java——(Java学习笔记一)
冯诺依曼体系结构 JAVA核心优势:跨平台---通过JVM(java虚拟机)来实现 JVM:Java虚拟机的一种规范 标示符:只能以下划线.美元符号($).字母.数字组成,不能以数字开 ...
- Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用
原文:Eval().XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用 “/vs2005”应用程序中的服务器错误.--------------------------- ...
- 10个devexpress ASPxPivotGrid常见问题
原文:10个devexpress ASPxPivotGrid常见问题 1.DXperience ASPxGridView如何开启lightweight模式 描述:ASPxGridView样式主题中pa ...
- STL algorithmi算法s_sorted和is_sorted_until(28)
is_sort原型: ::is_sorted default (1) template <class ForwardIterator> bool is_sorted (ForwardIte ...
- 霍夫曼(最优二叉树)和Java达到
一.定义 一些定义: 节点之间的路径长度:在从节点树中的一个节点也经历分公司,这构成的两个节点之间的路径分支的数目后这就是所谓的路径长度 的路径长度:从树的根节点到树中每一结点的路径长度之和. 在结点 ...
- 写一个根据id字段查找记录的缓存函数(javascript)
前不久在参加面试的时候遇到了这样一道题,"写一个根据id字段查找记录的缓存函数,如果之前查过,则直接返回之前查找过的对象,而无须重新查找".当时由于时间较短加上时间比较紧张,考虑并 ...
- Advance Installer安装问题
一,在Advance Installer中注冊dll 1,首先将文件加入到Files And Folders中.此处以InstallValidate.dll为例. 2,在Custom Action处进 ...
- vs2012连接sql2008(错误类型:Could not load file or assembly)
发生错误: Sql Server2008数据库中有一个数据库. 我想ORM-Entity FrameWork技术,在自己主动了一个项目,建立一个实体类! 解决的方法: 出现上面的情况.是由于缺少了这两 ...
- 【百度地图API】建立全国银行位置查询系统(三)——如何在地图上添加银行标注
原文:[百度地图API]建立全国银行位置查询系统(三)--如何在地图上添加银行标注 <摘要>你将在第三章中学会以下知识: 如何在地图上添加带银行logo的标注?(你也可以换成商场logo, ...