博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LINQ中的一些查询语句格式
阅读量:7294 次
发布时间:2019-06-30

本文共 1352 字,大约阅读时间需要 4 分钟。

 

LINQ的基本格式如下所示:
var <变量> = from <项目> in <数据源> where <表达式> orderby <表达式>

LINQ 基本子句

from查询子句——基础
后面跟随着项目名称和数据源
示例代码如下:
var str = from lq in str select lq;
其中select语句指定了返回到集合变量中的元素是来自哪个数据源的

from查询子句——嵌套查询

可以在from子句中嵌套另一个from子句即可,示例代码如下所示。
var str = from lq in str from m in str2 select lq;

where条件子句

where子句指定了筛选的条件,这也就是说在where子句中的代码段必须返回布尔值才能够进行数据源的筛选
示例代码如下:
var str = from m in MyList where m.Length > 5 select m;

where子句查询

当需要多个where子句进行复合条件查询时,可以使用“&&”进行where子句的整合
示例代码如下:
var str = from m in myList where (m.Length > 6 && m.Contains("liu")) select m;

group分组子句
语句格式:var str = from p in PersonList group p by p.age
group子句将数据源中的数据进行分组,在遍历数据元素时,并不像前面的章节那样直接对元素进行遍历,因为group子句返回的是元素类型为IGrouping<TKey,TElement>的对象序列,必须在循环中嵌套一个对象的循环才能够查询相应的数据元素。
在使用group子句时,LINQ查询子句的末尾并没有select子句,因为group子句会返回一个对象序列,通过循环遍历才能够在对象序列中寻找到相应的对象的元素,如果使用group子句进行分组操作,可以不使用select子句。

orderby排序子句

语句格式:var str = from p in PersonList orderby p.age select p;
orderby子句中使用descending关键字进行倒序排列
示例代码如下:
var str = from p in PersonList orderby p.age descending select p;
orderby子句同样能够进行多个条件排序,只需要将这些条件用“,”号分割即可
示例代码如下:
var str = from p in PersonList orderby p.age descending,p.name select p;

join连接子句

在LINQ中同样也可以使用join子句对有关系的数据源或数据对象进行查询,但首先这两个数据源必须要有一定的联系
var str = from p in PersonList join car in CarList on p.cid equals car.cid select p;

转载于:https://www.cnblogs.com/xiaz/p/5324297.html

你可能感兴趣的文章
MongoDB进阶
查看>>
python3csv与xlsx文件操作模块(csv、xlsxwriter)
查看>>
开启线程方式
查看>>
xdebug
查看>>
Css之 间距初始化
查看>>
lsnrctl启动报错,Linux Error: 29: Illegal seek
查看>>
IDEA github
查看>>
linux 驱动学习笔记05--文件系统与设备文件系统
查看>>
unresolved external symbol __forceAtlDllManifest错误的解决
查看>>
Linux的.run文件简单制作
查看>>
ubuntu解压命令(转)
查看>>
C#获取获取北京时间多种方法
查看>>
动态语言的灵活性是把双刃剑 -- 以 Python 语言为例
查看>>
1. 字节序的转换
查看>>
ubuntu14.04LTS下ECLIPSE+JAVA搭建
查看>>
学习RxJS: 导入
查看>>
PowerDesigner大小写转换
查看>>
纯 CSS 利用 label + input 实现选项卡
查看>>
Ubuntu 上安装R
查看>>
How .Net code can call unmanaged code?
查看>>