C# Datatable group by 查询
操作Datatable group by 查询
- //获取统计图形数据
- var dicleft = new Dictionary<string, DataTable>();
- var query = from t in dataTableList[].AsEnumerable()
- group t by new { mname = t.Field<string>("COL_MATERIAL_NAME") } into m
- select new
- {
- MaterialName = m.Key.mname,
- value = m.ToList()
- };
- foreach (var item in query)
- {
- var dtmax = new DataTable();
- dtmax.Columns.Add("XValue");
- dtmax.Columns.Add("YValue");
- var dtmin = dtmax.Copy();
- var dtavg = dtmax.Copy();
- var dtup = dtmax.Copy();
- var dtdown = dtmax.Copy();
- foreach (DataRow dritem in item.value)
- {
- DataRow dr = dtmax.NewRow();
- dr["XValue"] = dritem["COL_DATEMONTH"];
- dr["YValue"] = dritem["COL_MAXVALUE"];
- dtmax.Rows.Add(dr);
- dr = dtmin.NewRow();
- dr["XValue"] = dritem["COL_DATEMONTH"];
- dr["YValue"] = dritem["COL_MINVALUE"];
- dtmin.Rows.Add(dr);
- dr = dtavg.NewRow();
- dr["XValue"] = dritem["COL_DATEMONTH"];
- dr["YValue"] = dritem["COL_AVGVALUE"];
- dtavg.Rows.Add(dr);
- dr = dtup.NewRow();
- dr["XValue"] = dritem["COL_DATEMONTH"];
- dr["YValue"] = dritem["COL_UPVALUE"];
- dtup.Rows.Add(dr);
- dr = dtdown.NewRow();
- dr["XValue"] = dritem["COL_DATEMONTH"];
- dr["YValue"] = dritem["COL_DOWNVALUE"];
- dtdown.Rows.Add(dr);
- }
- dicleft.Add(item.MaterialName + "-最高值", dtmax);
- dicleft.Add(item.MaterialName + "-最低值", dtmin);
- dicleft.Add(item.MaterialName + "-平均值", dtavg);
- dicleft.Add(item.MaterialName + "-内控上限", dtup);
- dicleft.Add(item.MaterialName + "-内控下限", dtdown);
- }
- chartEntity = QMBasicData.AnalyticSeriesData(dicleft, "", new Dictionary<string, DataTable>(), "",
- ChartTypeEnum.Line);
C# Datatable group by 查询的更多相关文章
- DataTable的子查询--DataTable.Select()
由于需要,在sql查询获得结果集之后,又需要对该结果再进行筛选一次,若重新从sql中查询会浪费资源,因此特地去查阅了一些资料,学会了用DataTable进行子查询. 在.Net Framework 2 ...
- C# List集合Group by查询
C# List集合Group by查询 //根据企业ID.类型.配置ID进行分组: var groupList = chRCheckConfirmList .GroupBy(x => new { ...
- 关于表 datatable的条件查询
关于表 datatable的条件查询 从数据库中获得一个datatable dt .里面有很多的死的数据.然后,我就是要在这个表中来按条件查询,例如 dt中有个列叫"palte", ...
- DataTable/Array Linq查询,groupby
DataTable Linq查询 1.查询DataRow IEnumerable<DataRow> q1 = from r in dt.AsEnumerable() == select r ...
- Linq DataTable Group By 分组显示人员明细
实现功能: 多个字段分组源码样例: 原始数据: 分组后的输出结果: 源代码: public static void PrintPersons() { //准备数据 DataTable dt ...
- linq to datatable 和lambda查询datatable
用Linq查询DataTable static DataTable table = new DataTable(); static DataColumn dc = new DataColumn(); ...
- inq to datatable group by 多列 实现
using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.T ...
- group by 查询分组后 组的条数
比如select gid from table group by gid 查询时使用下面的方法查询条数 select count(distinct gid) from table 使用select c ...
- mongodb 对内嵌文档(数组) group分页查询,并设置查询条件
文档示例Account的其中一条记录: // collection: Account { "_id" : ObjectId("5843e38e535f3708f759b2 ...
随机推荐
- CAD厂商的一丢丢笔记
Cadence Cadence是个公司名,产品有: OrCAD,画原理图的 Allegro,画PCB的,PrintedCircuitBoard. Mentor,暂时还不知道画什么的 Autodesk ...
- Head First 设计模式之适配器模式与外观模式
Head First设计模式之适配器模式与外观模式 前言: 之前讲过装饰者模式,将对象包装起来并赋予新的职责,这一章我们也会将对象进行包装,只不过是让它们看起来不像自己而像是别的东西.这样就可以在设计 ...
- Verilog HDL那些事_建模篇笔记(实验八:键盘解码)
1.PS2接口与协议时序图 对于PS2的接口来说,需要额外关注的是PIN5与PIN1,一个是时钟,一个是数据.PS2协议对数据的移位是“CLOCK下降沿”有效,其CLOCK的频率通常在10KHz左右. ...
- Visual Studio 14 初试,vNext
下了几天的VS 2014 .终于安装上了,花了好几天时间, VS 2014 下载地址, http://www.visualstudio.com/en-us/downloads/visual-stud ...
- Python torndoa mysql 模块安装
pip install torndb pip install pip install mysql-python #不支持3.x版本 ln -s /usr/local/mysql/lib/libmysq ...
- OAF_开发系列18_实现OAF页面跳转setForwardURL / forwardImmediately(案例)
20150716 Created By BaoXinjian
- caffe:用自己的数据训练网络mnist
画黑底白字的软件:KolourPaint. 假设所有"1"的图片放到名字为1的文件夹下.(0-9类似)..获取每个数字的名称文件后,手动表上标签.然后合成train.txt 1.获 ...
- MODBUS-RTU通讯协议简介
MODBUS-RTU通讯协议简介 什么是MODBUS? MODBUS 是MODICON公司最先倡导的一种软的通讯规约,经过大多数公司 的实际应用,逐渐被认可,成为一种标准的通讯规约,只要按照这种规 ...
- CryptoJS遇到的小坑
CryptoJs是前端加密用的,具体介绍:http://code.google.com/p/crypto-js/ 对应国内免费CDN 服务:http://www.bootcdn.cn/crypto-j ...
- 【HOW】如何手工编辑InfoPath文件
因为直接打开InfoPath的配置文件进行编辑会有些无从下手,所以下面以修改“节”的Margin为例来说明手工编辑InfoPath文件的过程. 1. 新建一个“节”,并在此节中创建一个数字类型字段“n ...