C#集合中根据多个字段分组 group by linq表达式
void Main()
{
var empList =new List<Employee>
{
new Employee {ID = , FName = "John", Age = , Sex = 'M'},
new Employee {ID = , FName = "Mary", Age = , Sex = 'F'},
new Employee {ID = , FName = "Amber", Age = , Sex = 'M'},
new Employee {ID = , FName = "Kathy", Age = , Sex = 'F'},
new Employee {ID = , FName = "Lena", Age = , Sex = 'F'},
new Employee {ID = , FName = "Bill", Age = , Sex = 'M'},
new Employee {ID = , FName = "Celina", Age = , Sex = 'F'},
new Employee {ID = , FName = "John", Age = , Sex = 'M'}
};
//这里是根据Age,Sex进行分组
// query with lamda expression g.Key代表Age和Sex两字段,Count为新增字段 // 最终返回的集合QueryWithLamda包含字段:Age、Sex、Count
var QueryWithLamda = empList.GroupBy(x => new { x.Age, x.Sex})
.Select(g=>new {g.Key, Count=g.Count()}); //query with standard expression<br> //返回结果同上
var query=from el in empList
group el by new {el.Age,el.Sex} into g
select new {g.Key, Count=g.Count()}; foreach (var employee in query /* Or QueryWithLamda */ )
Console.WriteLine(employee.Count); } public class Employee
{
public int ID {get;set;}
public string FName {get;set;}
public int Age {get;set;}
public char Sex {get;set;}
}
C#集合中根据多个字段分组 group by linq表达式的更多相关文章
- .Net Linq与Lambda表达式中GroupBy以多个字段分组
一.引入 基本上熟悉C#语言的没有不知道Lambda表达式的,其对于数据的处理真的是太方便了.其中分组处理的GroupBy方法在List中的使用非常广泛.正式近期一个功能需求中又遇到了,而且是需要Gr ...
- List集合中元素排序
应用场景: 在开发中经常遇到要对List<Object>集合进行排序,并且是根据集合中的对象的某个属性来进行排序 --------以下就此做出的解决方案 public static ...
- orm中的聚合函数,分组,F/Q查询,字段类,事务
目录 一.聚合函数 1. 基础语法 2. Max Min Sum Avg Count用法 (1) Max()/Min() (2)Avg() (3)Count() (4)聚合函数联用 二.分组查询 1. ...
- java8 从对象集合中取出某个字段的集合
public class FeildTest { public static void main(String[] args) { //定义list集合 List<P> list = Ar ...
- List集合中的对象按照某个字段去重实现
package com.liying.banana.user; import java.util.ArrayList; import java.util.Comparator; import java ...
- List集合中的数据按照某一个属性进行分组
有的时候,我们需要在java中对集合中的数据进行分组运算.例如:Bill对象有money(float)和type(String)属性,现有个集合List<Bill>,需要按照Bill的ty ...
- 关于java中对list集合中的数据按照某一个属性进行分组
有的时候,我们需要在java中对集合中的数据进行分组运算. 例如:Bill对象有money(float)和type(String)属性,现有个集合List<Bill>,需要按照Bill的t ...
- C# Mongo DB 修改多层嵌套集合中的字段
C# Mongo DB 修改嵌套集合中的字段 虽然c#的mongo 驱动很强大,而且还支持linq,但是一些复杂的操作语句还是比较困难 这里我用Bson实现功能 这是模型(我这里有多层嵌套) publ ...
- java范型集合中的成员排序
范型集合中的类是JsonObject,不是自定义类,如果是自定义类就直接取要比较的字段值. ArrayList<JSONObject> TList = new ArrayList<J ...
随机推荐
- MYSQL练习随笔
解法练习 案例1.子查询练习 字段 说明film_id 电影idtitle 电影名称description 电影描述信息category_id 电影分类idname 电影分类名称last_update ...
- STM32芯片命名规则
- PHP扩展使用-CURL
一.简介 功能:是一个可以使用URL的语法模拟浏览器来传输数据的工具库,支持的协议http.https.ftp.gopher.telnet.dict.file.ldap 资源类型:cURL 句柄和 c ...
- 15、iptables详解
-- http://www.netfilter.org/ http://www.iptables.org/ --参考路径 http://www.netfilter.org/docume ...
- 进化后的const分析
C语言中的const const修饰的变量是只读的,本质还是变量 const修饰的局部变量在栈上分配空间 const修饰的全局变量在只读存储区分配空间 const只在编译期有用,在运行期无用 注意:c ...
- java中判断两个对象是否相等
package ceshi.com.job; import java.util.ArrayList; import java.util.Arrays; import java.util.List; p ...
- 生产者和消费者模型producer and consumer(单线程下实现高并发)
#1.生产者和消费者模型producer and consumer modelimport timedef producer(): ret = [] for i in range(2): time.s ...
- 【作用域】词法作用域(静态作用域,如:js)、动态作用域(如:.bash脚本)
作用域 作用域是指程序源代码中定义变量的区域. 作用域规定了如何查找变量,也就是确定当前执行代码对变量的访问权限. JavaScript 采用词法作用域(lexical scoping),也就是静态作 ...
- xgboost:
https://www.zybuluo.com/Dounm/note/1031900 GBDT算法详解 http://mlnote.com/2016/10/05/a-guide-to-xgboost- ...
- Oracle工具PLSQL
2018版的PLSQL美化工具在Tools中的PL/SQL Beautifier中 如下: