1、 查询Student表中的所有记录的Sname、Ssex和Class列。(select sname,ssex,class from student)
Students.Select(s=> new { sname=>s.sname,ssex=>s.ssex, class=>s.class})
linq:from s in Students select new{s.sname, }

2.查询教师所有的单位即不重复的Depart列。select distinct depart from teacher
teachers.distinct().Select(s=>s.depart)
linq: from s in teachers.Distinct() select s.depart

3、 查询Student表的所有记录。select * from Student
student.Select(s=>s)
linq: from s in student select s;

4、 查询Score表中成绩在60到80之间的所有记录。 select * from score where grages bewteen 60 and 80
score.Where(s=>(s.grages>60 && s.grages<80) );
linq: from s in score where s.grages>60 && s.grages<80 select s;

5、 查询Score表中成绩为85,86或88的记录。select * from score where grages in (85,86,88)
linq: from s in Score Where ( new decimal[] {85,86,88}.Contains(s.grage))
Scores.Where( s => new Decimal[] {85,86,88}.Contains(s.grage))

6、 查询Student表中"95031"班或性别为"女"的同学记录。select * from student where class ='95031' or ssex= '女'
student.Where(s=> (s.class=="95031" || s.sex="女"))
from s in student where s.class=="" || s.sex=="" select s;

7、 以Class降序查询Student表的所有记录。 select * from student order by Class DESC
student.OrderByDescing(s=> s.Class)

from s in student order by s.class descending select s;

8、 以Cno升序、Degree降序查询Score表的所有记录。select * from Score order by cno asc and grage desc
score.OrderByDescing(s=>s.grage).OrderBy(s=>s.cno);

from s in score order by s.grage descending order by s.cno ascending select s;

9、 查询"95031"班的学生人数。select count(*) from Students where class='95031'
students.Select(s=>s.class=='95031').Count();
///students.Where(s=>s.class=='').Select(s=>s).Count();

10、查询Score表中的最高分的学生学号和课程号。

11、查询'3-105'号课程的平均分。select avg(grage) from score where cno='3-105'
score.where(s=>s.con=="3-105").Select(s=>s.grage).Avgage();

12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。
select avg(degree) from score where cno like '3%' group by Cno having count(*)>=5

linq: from s in score where s.con.StartWith("3") group s by s.Cno into cc where cc.count>5
select cc.Avgage(s=>s.grage)

13、查询最低分大于70,最高分小于90的Sno列。select Sno from score group by Sno having min(grage)>70 and
max(grage)<90
linq: from s in score group s by s.sno into cc where cc.min(grage)>70 && cc.Max(grage)<90
select new {sno =>cc.key}

lambda:
scores.GroupBy(s=>s.sno).Where(ss=> ( (ss.Min(cc=>cc.grage)>70) && (ss.Max(cc=>cc.grage)<90 )))
.select(ss=> new {sno=>ss.key})

14、查询所有学生的Sname、Cno和Degree列。
select s.sname,sc.cno,sc.degree from student s,score sc where s.sno = sc.sno

from s in Student join sc in score on s.sno=sc.sno
select new {s.sname,sc.cno, sc.degree}

lambda: Student.join(scores,s=>s.sname,
sc=>sc.cno,
(s,sc)=> new{ sname =s.sname, cno=sc.cno, degree=sc.degree })

//释放资源 .Dispose();
------------------------------------------------------------
.skip(1).Take(4) Skip 上面这段语句的意思是从第二条数据开始显示4条
AppendAndWhere //附加AND查询条件 JoinOnAndWhere //joinon筛选条

Any(): 判断集合中是否有元素满足某一条件
仅返回没有订单的客户:var q =from c in db.Customers where !c.Orders.Any() select c;

All(): 判断集合中所有元素是否都满足某一条件。
var q =from c in db.Customers where c.Orders.All(o => o.ShipCity == c.City) select c;
语句描述:这个例子返回所有订单都运往其所在城市的客户或未下订单的客户。

Contains() :用于判断集合中是否包含有某一元素

Concat(连接): 连接不同的集合,不会自动过滤相同项
var q = (from c in db.Customers select c.Phone).Concat(from c in db.Customers select c.Fax).Concat(from e in db.Employees select e.HomePhone);
语句描述:返回所有消费者和雇员的电话和传真。

Union ::连接不同的集合,自动过滤相同项;延迟。即是将两个集合进行合并操作,过滤相同的项。

Intersect(相交) :取相交项;延迟。即是获取不同集合的相同项(交集)。
Except (与非) :排除相交项;
.Implicit(隐式) Explicit(显式)

ToArray:将序列转换为数组

ToList:将序列转换为泛型列表
-------------------------------------------------------------

有关 Lambda && linq练习 有待整理的更多相关文章

  1. C#基础:LINQ 查询函数整理

    1.LINQ 函数   1.1.查询结果过滤 :where() Enumerable.Where() 是LINQ 中使用最多的函数,大多数都要针对集合对象进行过滤,因此Where()在LINQ 的操作 ...

  2. [MVC4]ASP.NET MVC4+EF5(Lambda/Linq)读取数据

    继续上一节初始ASP.NET MVC4,继续深入学习,感受了一下微软的MVC4+EF5(EntityFramework5)框架的强大,能够高效的开发出网站应用开发系统,下面就看一下如何用MVC4+EF ...

  3. 分享一个递归无限级拼接Json的方法---ExtJs的TreePanel和TreeGrid均适用(Ef,Lambda,Linq,IQueryable,List)

    话不多说,先上实体类,如果你不是codefirst,就把它当成数据表结构. 下面是底层BaseDal获取数据的方法  (如果你没有Base类,直接写在你的DAL层和BLL层) 下面是BaseServi ...

  4. [转][MVC4]ASP.NET MVC4+EF5(Lambda/Linq)读取数据

    本文转自:https://blog.csdn.net/dingxiaowei2013/article/details/29405687 继续上一节初始ASP.NET MVC4,继续深入学习,感受了一下 ...

  5. 几种查询方法(lambda Linq Enumerable静态类方式)

    1.需要一个数据源类: using System; using System.Collections.Generic; namespace Linq { public class Student { ...

  6. C# Lambda && Linq

    Lambda表达式在C#3.0加入,它是一个匿名函数,可用于创建委托或者表达式树类型,运算符为=>,读作"goes to",=>左侧是变量,右侧是表达式,变量类型可以自 ...

  7. 拼linq 时网上整理的一个类

    public static class DynamicLinqExpressions { public static Expression<Func<T, bool>> Tru ...

  8. Lambda表达式使用方法整理

    匿名内部类                                                                               Lambda表达式 匿名内部类  ...

  9. MySQL初步笔记,有待整理

     查询表纪录: select * from tb1; 插入一条记录 insert tb1 values(value1,value2,...); 修改表的默认编码: alter table tb1 ch ...

随机推荐

  1. LINQ查询基础

    一.什么是LINQ LINQ是Language Integrate Query的缩写,意为语言集成查询,是微软在.Net Framework 4.5版中推出的主要特性之一. 它为开发人员提供了统一的数 ...

  2. 简单日志LogHelper

    public static class LogHelper { //日志存储路径 private static string LogPath = Path.Combine(AppDomain.Curr ...

  3. POJ 3189 二分+Dinic

    题意: 思路: 二分跨度 枚举最低座次 建图:源点向每头牛连边权为1的边 每头牛向当前枚举的B的区间这段连上边权为1的边 所有座次向汇点连边权为牛棚容量的边 判判流量是不是等于n 一开始写得是直接枚举 ...

  4. Gallery滑动一页(一个Item)效果

    本文主要介绍如何使用Gallery只滑动一页以及其实现原理. Demo APK 可以方便的查看效果,在各大应用商店搜索 trinea android 下载即可,如:Google Play. 可运行代码 ...

  5. 解析position定位

    关于position定位(所有主流浏览器都支持 position 属性),大家会联想到relative和absolute,下面我就讲一下relative和absolute分别是相对于谁进行定位的? 在 ...

  6. CSS2.1(布局)

    浏览器内核 Firefox : geckoIE: tirdentSafari: webkitChrome: 一开始使用webkit 后来基于webkit开发了Blinkopera: 一开始使用pres ...

  7. 【RHEL7/CentOS7基本配置】

    目录 @ 相比于6.x的版本,Rhel7/CentOS7增加或改进了以下7大特性. 1.身份管理 kerberos的跨平台信任机制:kerberos将完全兼容微软活动目录,实现完全使用活动目录进行认证 ...

  8. HDU 2883 kebab

    kebab Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 2883 ...

  9. ActiveReports 9实战教程(2): 准备数据源(设计时、执行时)

    在上讲中<ActiveReports 9实战教程(1): 手把手搭建好开发环境Visual Studio 2013 社区版>,我们已经结合Visual Studio 2013搭建好了Act ...

  10. mongo数据库--非关系型数据库

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGFuZ2xpdXFpbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...