C# Linq List 小结 groupBy_linq list groupby-程序员宅基地

技术标签: C#  Linq  groupBy  

C# Linq List 小结:

1) List进行groupBy分组

类:Enq_Item_Vend

public class Enq_Item_Vend {

	public decimal Id { set; get; }
	
	public decimal Order_Id { set; get; }
	
	public decimal Order_Type_N { set; get; }
	
	public string Vend_Id { set; get; }

        public decimal Vat_Price { set; get; }
	
	...	

	public Enq_Item_Vend() {}
}

现在有这么一个对象List<Enq_Item_Vend>

//data为DataTable对象
//把DataTable对象转化为List对象
List<Enq_Item_Vend> eivList = BeanUtil.ToEntity<Enq_Item_Vend>(data);

要求需要进行分组,1:依据供应商进行分组(VEND_ID);2:依据来源行进行分组(Order_Type_N,Order_Id)

//1) 依据Vend_Id字段进行分组
IEnumerable<IGrouping<string, Enq_Item_Vend>> query1 = eivList.GroupBy(eiv => eiv.Vend_Id);
//2) 依据Order_Type_N,Order_Id 分组(多字段分组)
var query2 = eivList.GroupBy(eiv => new { eiv.Order_Type_N, eiv.Order_Id });

此时,获取的query1,query2对象就是分组之后的对象,但是需要注意的是query1,query2并不是同一个对象;

query对象可以继续使用select进行linq查询:

var ret1 = query1.Select(group => new {
                        Keys = group.Key,
                        TotalValue = group.Min(p => p.Vat_Price)//group有min/max等聚合函数
                    });

返回的ret1对象可以继续查询

decimal sumMinValue = ret1.Sum(r => r.TotalValue);//依然可以使用SUM/MIN/MAX等聚合函数

这里得出的sumMinValue即为List<Enq_Item_Vend>数据集中依据Vend_Id分组,每个组的最小值之和;

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sword_happy/article/details/94547631

智能推荐

Google File System学习笔记_google file system笔记-程序员宅基地

文章浏览阅读1.2k次。先贴上GFS Architecture示意图: Google云架构是基于Google公司的实际应用需求而设计的,主要针对大型分布式数据密集型应用。因为这个设计太给力了,所以Apache基金会实现了一个开源版本,就是Hadoop,目前貌似Hadoop性能只有Google商业版的1/10。 如上图,数量众多的数据密集型应用通过GFS client接口,使用f_google file system笔记

Spring Cloud +Gateway + Nginx +Docker 实现高可用网关集群_docker nginx gateway-程序员宅基地

文章浏览阅读675次,点赞2次,收藏13次。Spring Cloud + Eureka + Gateway + Nginx + OpenFeign + Docker 手把手教你 搭建 高可用网管集群微服务,内附代码!!!_docker nginx gateway

【gdb】- 单步执行和跟踪函数调用_gdb调试查看函数调用关系图-程序员宅基地

文章浏览阅读6.4k次。操作环境:[root@localhost zhangsan]# cat /proc/version Linux version 2.6.32-696.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Tue Mar 21 19:29:0..._gdb调试查看函数调用关系图

让 SpringMVC 接收多个对象的4种方法_springmvc接收多个对象-程序员宅基地

文章浏览阅读433次。问题背景: 我要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收; 第2种方法:表单提交,以BeanListModel接收; 第3种方法:将Json对象序列化成Json字符串提交,以List接收; 第4种方法:将表单对象序列化成Json字符串提交,以List接收;_springmvc接收多个对象

Android PowerSupply (四)ChargeIC SGM41511 IC driver调试_sgm41511技术支持-程序员宅基地

文章浏览阅读1.4k次。注册i2c 设备static struct of_device_id sgm41511_charger_match_table[] = { { .compatible = "sgm41511", }, { },};static const struct i2c_device_id sgm41511_charger_id[] = { { "sgm41511", 0x00 }, { },};static struct i2c_driver sgm41511_charger_driver_sgm41511技术支持

QT实现HTTP请求(超时阻塞)_qt5 qnetworkaccessmanager post超时-程序员宅基地

文章浏览阅读6.4k次,点赞4次,收藏5次。postdata.hpp#ifndef POSTDATA_HPP#define POSTDATA_HPPclass PostData : public QObject{ Q_OBJECTpublic: explicit PostData(QObject *parent = nullptr); ~PostData(); /* 提交图片到PHP *..._qt5 qnetworkaccessmanager post超时

随便推点

让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能-程序员宅基地

文章浏览阅读220次。转载:https://blog.zengrong.net/post/1568.html让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能今天在论坛上看到一篇文章:H264VideoStreamSettings无法在cs4里面使用吗?,并做了回复。记录在这里,希望对更多的人有帮助。H264VideoStreamSettings是Flash Player 1..._flash as air 版本设置

一个值得借鉴的QSS样式 -程序员宅基地

文章浏览阅读178次。[url]http://blog.csdn.net/yebufan/article/details/5875614[/url][code="java"]*{ font-size:13px; color:white; font-family:"宋体";}CallWidget QLineEdit#telEdt{ font-size:24px;}..._qss 一个经典的qss样式

Wrap组件_wrappx组件-程序员宅基地

文章浏览阅读180次。Wrap组件Wrap可以实现流布局,单行的Wrap跟Row表现几乎一致,单列的Wrap则跟Row表现几乎一致。但Row与columl都是单行单列的,Wrap则突破了这个限制,mainAxis上空间不足时,则向crossAxis上去扩展显示。属性默认值说明directionAxis.horizontal主轴的方向,默认水平alignmentWrapAlignment.start主轴的对其方式spacing0.0主轴方向上的间距runAlignmentW_wrappx组件

【编程】为什么程序员的社会地位不高?_为什么程序员地位最低-程序员宅基地

文章浏览阅读1.3k次。到目前为止,在过去60年中在世界排名前20的国家中,没有哪条街是以程序员或者计算机科学家的名字命名的。没有任何一个世界主要城市拥有程序员或者计算机科学家的雕像。没有程序员或者计算机科学家获得过总统奖章(Presidential Medal)或者国会金质奖章(Congressional Gold Medal)。没有国家级别的针对程序员或者计算机科学家的颁奖典礼。  但是我们有艺术、运动、经济、娱_为什么程序员地位最低

遥感学习网站汇总_remote sensing网站-程序员宅基地

文章浏览阅读4.4k次,点赞4次,收藏47次。遥感学习网站汇总1. 香港浸会大学的virtual实验室,周启鸣老师简介:在线GIS和RS软件教程,介绍了Envi的使用过程,网址:http://geog.hkbu.edu.hk/virtuallabs/2.GIS空间站简介:GIS,rs相关资料,有免费的书籍下载(包括Envi用户手册等)网址:http://www.gissky.net/soft/dzsj/3.普度大学_remote sensing网站

ccf csp考试201712-1最小差值答案(python实现)_csp201712-1python-程序员宅基地

文章浏览阅读284次。ccf csp考试201712-1最小差值答案(python实现)a = input()nums = list(map(int,input().split()))b = abs(nums[0]-nums[1])for i in range(int(a)): for j in range(i+1,len(nums)): if abs(nums[i]-nums[j])&..._csp201712-1python

推荐文章

热门文章

相关标签