C# Linq 常用查询操作符
限定操作:
1. All:用来确定是否序列中的所有元素都满足条件
2. Any:用来确定序列是否包含任何元素,有参方式用来确定序列中是否有元素满足条件
3. Contains:方法用来确定序列是否包含满足指定条件的元素
排序:
1. OrderBy:将序列中的元素按照升序排列
2. ThenBy:实现按照次关键字对序列进行升序排列(二级排序)
3. OrderByDescending:将序列中的元素按照降序排列
4. ThenByDescending:实现按照次关键字对序列进行降序排列(二级排序)
5. Reverse:对集合反向排序
分区操作:
1. Skip:跳过集合的前n个元素
2. SkipWhile:直到某一条件成立就停止跳过
3. Take:获取集合的前n个元素
4. TakeWhile:直到某一条件成立就停止获取
聚合操作:
1. Aggregate:对集合值执行自定义聚合运算。例如:把所有值按某个符号间隔输出
2. Average:求集合中元素的平均值,返回值类型double
3. Count:求集合中元素的个数,返回值类型Int32
4. LongCount:求集合中元素的个数,返回值类型Int64
5. Max:求集合中元素的最大值
6. Min:求集合中元素的最小值
7. Sum:求集合中元素的和
集合操作:
1. Distinct:过滤集合中的相同项
2. Union:连接不同集合,自动过滤相同项
3. Concat:连接不同集合,不会自动过滤相同项
4. Intersect:获取不同集合的相同项(交集)
5. Except:从某集合中删除其与另一个集合中相同的项
6. SequenceEqual:判断两个序列是否相等。相等,返回true,否则返回false
元素操作符:
1. Single:返回序列中的唯一一条记录,如果没有或返回多条,则引发异常
2. SingleOrDefault:返回序列中的唯一一条记录,如果序列中不包含任何记录,则返回默认值,如果返回多条,则引发异常
3. First:取序列中满足条件的第一个元素,如果没有元素满足条件,则抛出异常
4. FirstOrDefault:取序列中满足条件的第一个元素,如果没有元素满足条件,则返回默认值(null)
5. ElementAt:返回序列中指定索引处的元素。如果索引超出范围会导致异常
6. ElementAtOrDefault:返回序列中指定索引处的元素;如果索引超出范围,则返回默认值
生成操作:
1. Empty:将返回一个指定类型的空集合,例:var str = Enumerable.Empty<string>();
2. DefaultIfEmpty:将空集合替换为具有默认值的单一实例集合。DefaultIfEmpty方法需要两个参数,第一个参数是一个泛型集合,第二个参数是相应类型的单个元素,如果第一个参数中不含有任何元素,它将返回第二个参数指定的单个元素
3. Range:用于生成指定范围内的整数的序列,例:var temp = Enumerable.Range(0, 10);
4. Repeat:用于生成包含一个重复值的集合,例:var temp = Enumerable.Repeat(0, 10);
C# Linq 常用查询操作符的更多相关文章
- LINQ标准查询操作符(三)——Aggregate、Average、Distinct、Except、Intersect、Union、Empty、DefaultIfEmpty、Range、Repeat
七.聚合操作符 聚合函数将在序列上执行特定的计算,并返回单个值,如计算给定序列平均值.最大值等.共有7种LINQ聚合查询操作符:Aggregate.Average.Count.LongCount.Ma ...
- Linq 标准查询操作符三
本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...
- LINQ 标准查询操作符
本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...
- LINQ标准查询操作符详解(转)
一. 关于LINQ LINQ 英文全称是“Language-Integrated Query”,中文为“语言集成查询”,它是微软首席架构师.Delphi 之父和C# 之父——Anders ...
- 【LINQ标准查询操作符总结】之聚合操符
C# 中的LINQ 提供了两种操作方式,查询表达式和查询操作符,所有的查询表达式都有对应的查操作符类替代,查询表达式有点“类” SQL,在代码中写SQL,总觉得不够“优雅”,使用查询操作符就显得“优 ...
- LinQ实战学习笔记(四) LINQ to Object, 常用查询操作符
这一篇介绍了下面的内容: 查询object数组 查询强类型数组 查询泛型字典 查询字符串 SelectMany 索引 Distinct操作符 排序 嵌套查询 分组 组连接 内连接 左外连接 交叉连接 ...
- LINQ标准查询操作符(五)
十二.相等操作符 如果两个序列的对应元素相等且这两个序列具有相同数量的元素,则视这两个序列相等. SequenceEqual方法通过并行地枚举两个数据源并比较相应元素来判断两个序列是否相等.如果两个序 ...
- LINQ标准查询操作符(二)——Join、GroupJoin、GroupBy、Concat、
四.联接操作符 联接是指将一个数据源对象与另一个数据源对象进行关联或者联合的操作.这两个数据源对象通过一个共同的值或者属性进行关联. LINQ有两个联接操作符:Join和GroupJoin. 1. J ...
- Linq常用查询运算符
Linq一共包含五十几个查询运算符,常用的根据类型来区分一共有5类左右,这五类里面一些事在项目查询中经常用到的.不过linq运算符的命名十分规范,基本从字面意思就能猜测出来是干嘛用的,下面我们挑选一些 ...
随机推荐
- C# 不重启程序修改并保存配置文件(appSettings节点)
原文:C# 不重启程序修改并保存配置文件(appSettings节点) private static void UpdateAppConfig(string newKey, string newVal ...
- UWP-标题栏”后退“按钮
原文:UWP-标题栏"后退"按钮 标题栏”后退“按钮,系统级导航 应用必须启用所有硬件和软件系统后退按钮的后退导航.执行此操作的方法是注册 BackRequested 事件的侦听器 ...
- MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establish ...
- Linux下的帮助命令
内建命令,外部命令,命令别名:使用:type 命令名,查看 内建命令是shell一部分,一开始就加载进内存,程序一般简单:外部命令反之 2. 帮助命令的使用 内建命令:help 命令名:外部命令:命 ...
- Qt之获取本机网络信息(超详细)
经常使用命令行来查看一些计算机的配置信息. 1.首先按住键盘上的“开始键+R键”,然后在弹出的对话框中输入“CMD”,回车 另外,还可以依次点击 开始>所有程序>附件>命令提示符 2 ...
- 系统休眠消息PBT_APMSUSPEND
https://msdn.microsoft.com/en-us/library/windows/desktop/aa372721(v=vs.85).aspx https://msdn.microso ...
- java8计算时间差
示例1:计算指定时间单位的时间差 import java.time.Instant;import java.time.LocalDateTime;import java.time.temporal.C ...
- Ubuntu 下压缩软件的安装
在ubuntu下,系统就自带一个压缩包管理软件,但是,它默认是不支持rar和7zip格式的.因此,我们可以给它直接“增强”一下.就成了万能的了.安装方法,终端里面: sudo apt-get inst ...
- Mac上使用brew安装nvm来支持多版本的Nodejs
brew方式 如果机器没有安装过node,那么首先brew install nvm安装nvm. 其次需要在shell的配置文件(~/.bashrc, ~/.profile, or ~/.zshrc)中 ...
- 面试还不知道BeanFactory和ApplicationContext的区别?
接口 BeanFactory 和 ApplicationContext 都是用来从容器中获取 Spring beans 的,但是,他们二者有很大不同 我看到过很多问 BeanFactory 和 App ...