C#查询数据基础——Linq查询和lambda表达式

(作者:郭鑫 撰写时间:2019年4月13号)
任何一个对数据的操作必将时离不开对数据的查询,如要进行增删改那也得先找到需要进行操作的数据才能完成所需的要求。所以“查”在各种操作中时必不可少的。C#中有两种常用的查询方法Linq查询和lambda表达式,查询又有单表查询和多表联查,两者都可以使用Linq和lambda查询但又各有所长。单表查询lambda表达式比Linq查询要方便,多表联查一般用Linq查询。
Linq查询关键点:
必要的几个值有:from、in、select
In:在……,从哪里查,后面跟需要查询的表
Select:查询,就是要查找的内容
这是Linq最简单的查询:
C#查询数据基础——Linq查询和lambda表达式
除必要的几个值之外还有一些常用的值:where、join、on、equals、orderby
Where:查询条件
Join:多表联查的语句就写在join后面
On:多表联查的条件
Equals:相当于“==”
C#查询数据基础——Linq查询和lambda表达式
Orderby:对查询出来的数据进行排序
C#查询数据基础——Linq查询和lambda表达式
Select也有三种形式:上面已有两种写法
1、像这种直接select tbAcademe的用于单表查询,例如第一张图的用法,还可以直接查询出自己需要的某个属性值。
2、还有就是需要new 出来,直接new然后一个{},这种用于多表查询,一般是那种只要数据,不用知道数据内容查询才使用这种方法,例如:
C#查询数据基础——Linq查询和lambda表达式
3、还有最后一种也是需要new出来的,可以多表联查也可以单表查询,可以自定义一个类或者直接用表接收数据。就如第二张图的用法。
下面是Linq写法的基本结构:查询数据的格式也在图中说明
C#查询数据基础——Linq查询和lambda表达式

相比之下,lambda表达式就简单很多了,运算符就两个字符“=>”
最常用的几个值就是where、orderby、select、(single、tolist、count……)(必须有一个)
lambda表达式的核心就是lambda表达式的运算符“=>”了,“=>” 左边是参数(参数名称自拟,一般用字母表示),右边是表达式或者语句
以下就是一些常用的值的使用方法了,和Linq查询不同,像where、orderby、select这类的可以没有,但是single、tolist、count这类的必须得有一个
C#查询数据基础——Linq查询和lambda表达式