添加链接
注册
登录
link之家
链接快照平台
输入网页链接,自动生成快照
标签化管理网页链接
相关文章推荐
大鼻子的电池
·
electron开发记录(五):调用jque ...
·
11 月前
·
腼腆的饼干
·
excel巧用REPT函数在数字前补0-阿里 ...
·
1 年前
·
英俊的大熊猫
·
《Exploring in ...
·
1 年前
·
豪气的沙滩裤
·
R语言 Pheatmap 画非聚类 热图 ...
·
1 年前
·
不爱学习的番茄
·
安装webpack 报错 npm ERR ...
·
1 年前
·
link之家
›
C#——Linq的使用Where、GroupBy、Select_linq groupby select_风骚走位的博客
system
linq
https://blog.csdn.net/u010622242/article/details/102651322
年轻有为的香烟
1 年前
List
.Where(c => c.Djzt == 4 && c.Zfbz == 0) .GroupBy(c => new { c.Cjsj_Date, c.Flmc}) .Select( c => new Cjsj_Date = c.Key.Cjsj_Date, Flmc = c.Key.Flmc, Sl = c.Sum(x => x.Sl), Zl = c.Sum(x => x.Zl)
Linq
的分组功能
Linq
在集合操作上很方便,很多语法都借鉴自sql,但
linq
的分组却与sql有一定的区别,故整理发布如下。 1.
Linq
分组 分组后以Key属性访问分组键值。 每一组为一个IEnumberAble或IQeuryAble的集合,可以继续枚举。 Sample: string[] World = { "Hello","World"}; string[] Brother = ... 4.1 System.
Linq
.Enumerable 10 4.2 System.
Linq
.Queryable 10 4.3 System.
Linq
.Lookup 10 4.4 System.
Linq
.Expressions.Expression 10 5 接口 10 5.1 IEnumerable 、IEnumerator 10 5.1.1 正常
使用
10 5.1.2
C#
的 yield 12 5.2 IEnumerable 12 5.3 IEnumerator 12 5.4 ICollection 12 5.5 ICollection 13 5.6 IList 13 5.7 IList 13 5.8 IEqualityComparer 13 5.9 IEqualityComparer 13 5.10 IDictionary 13 5.11 IDictionary 13 5.12 IDictionaryEnumerator 13 5.13 IComparer 13 5.13.1 接口方法说明 int Compare(object x, object y) 13 5.13.2 ArrayList.Sort (IComparer) 方法 13 5.14 IComparer 14 5.14.1 接口方法override int Compare(T x, T y)说明 14 5.14.2 List.Sort (IComparer) 方法 14 5.15 System.
Linq
.I
Group
ing 14 5.16 System.
Linq
.ILookup 14 5.17 System.
Linq
.IOrderedEnumerable 14 5.18 System.
Linq
.IOrderedQueryable 14 5.19 System.
Linq
.IOrderedQueryable 15 5.20 System.
Linq
.IQueryable 15 5.21 System.
Linq
.IQueryable 15 5.22 System.
Linq
.IQueryProvider 15 6 集合扩展方法 15 6.1 集合扩展方法的实现:一个Where的例子 15 6.2 延迟类 15 6.2.1
Select
选择 16 6.2.2
Select
Many 选择 16 6.2.3 Where 条件 16 6.2.4 OrderBy 排序升 17 6.2.5 OrderByDescending 排序降 17 6.2.6
Group
By 分组 17 6.2.7 Join 联合查询 18 6.2.8
Group
Join 18 6.2.9 Take 获取集合的前n个元素 19 6.2.10 Skip 跳过集合的前n个元素 19 6.2.11 Distinct 过滤集合中的相同项 19 6.2.12 Union 连接不同集合,自动过滤相同项 19 6.2.13 Concat 连接不同集合,不会自动过滤相同项 19 6.2.14 Intersect 获取不同集合的相同项(交集) 20 6.2.15 Except 从某集合中删除其与另一个集合中相同的项 20 6.2.16 Reverse 反转集合 20 6.2.17 TakeWhile 条件第一次不成立就跳出循环 20 6.2.18 SkipWhile 条件第一次不成立就失效,将后面的数据全取 20 6.2.19 Cast 将集合转换为强类型集合 21 6.2.20 OfType 过滤集合中的指定类型 21 6.3 不延迟(浅复本) 21 6.3.1 Single 集合中符合条件的唯一元素,浅复本 21 6.3.2 SingleOrDefault 集合中符合条件的唯一元素(没有则返回类型默认值),浅复本 21 6.3.3 First 集合的第一个元素,浅复本 21 6.3.4 FirstOrDefault 集合中的第一个元素(没有则返回类型默认值),浅复本 22 6.3.5 Last 集合中的最后一个元素,浅复本 22 6.3.6 LastOrDefault 集合中的最后一个元素(没有则返回类型默认值),浅复本 22 6.3.7 ElementAt 集合中指定索引的元素,浅复本 22 6.3.8 ElementAtOrDefault 集合中指定索引的元素(没有则返回类型默认值),浅复本 22 6.3.9 Contains 判断集合中是否包含有某一元素 22 6.3.10 Any 判断集合中是否有元素满足某一条件 22 6.3.11 All 判断集合中是否所有元素都满足某一条件 23 6.3.12 SequenceEqual 判断两个集合内容是否相同 23 6.3.13 Count 、LongCount集合中的元素个数 23 6.3.14 Average 、Sum集合平均值求和 23 6.3.15 Max、Min 集合最大值,最小值 24 6.3.16 Aggregate 根据输入的表达式获取一个聚合值 24 6.3.17 DefaultIfEmpty 查询结果为空则返回默认值,浅复本 24 6.3.18 ToArray 将集合转换为数组,浅复本 24 6.3.19 ToList 将集合转换为List集合,浅复本 25 6.3.20 ToDictionary 将集合转换为集合,浅复本 25 7 Lambda表达式 25 7.1 例1(比效) 25 7.2 例2(多参) 27 7.3 例3(list.Where) 27 7.4 Lambda表达式中Lifting 28 8 QuerySyntax 查询语法 29 8.1 from in
select
30 8.2 orderby 排序 30 8.3
group
by into 分组 31 8.4 join in on equals 联合查询 33 8.5 into 汇总 33 9 DataSource 数据绑定 34 在整理资料的时候常常都需要给资料做分组,以便更进一步的分析及处理,最常见的分组处理应该就是在餐厅问券上常常会看到的年龄组别的部分,因各个年龄层的喜好并不相同,所以做分组对于分析资料来说非常的重要,在
LINQ
的应用上也是如此,接著让我们来看看
Group
By要怎麽
使用
吧。
使用
Group
By时指定元素的属性(栏位),它就会以这个属性做分组的处理。 请看下面的示意图(节录自Microsoft Docs): 我们有一个英文字集合的物件Source,想要把各个英文字的资料抓出来,这时就会用到分组的处理,处 var query = from rHead in mPlanDataTable.AsEnumerable() where rHead.Field<String>("line") == sqlLine.Text ... new User(){ Id="1", Name="n1",count1=1}, new User(){ Id="1", Name="n1",count1=2}, new User(){ Id="2", Name="n2",co... 语言集成查询 (Language Integrated Query) 是一系列直接将查询功能集成到
C#
语言的技术统称,用于在所有基于.NET平台的变成语言中更加直接地声明跨越、过滤和投射操作的一种方式,标准查询操作允许查询作用于所有基于IEnumerable接口的源。 //按工序
group
by flowjumps IEnumerable> query = flowJumps.
Group
By(pet => pet.processID, pet => pet); foreach (I
Group
ing info in q
推荐文章
大鼻子的电池
·
electron开发记录(五):调用jquery,bootstrap并对其一些用法的总结_electron bootstrap-CSDN博客
11 月前
腼腆的饼干
·
excel巧用REPT函数在数字前补0-阿里云开发者社区
1 年前
英俊的大熊猫
·
《Exploring in UE4》Unreal回放系统剖析(下) - 简书
1 年前
豪气的沙滩裤
·
R语言 Pheatmap 画非聚类 热图 - Soliva - 简书
1 年前
不爱学习的番茄
·
安装webpack 报错 npm ERR code EINVALIDTAGNAME_叮当猫❀的博客-CSDN博客
1 年前