zoukankan      html  css  js  c++  java
  • C# Datatable group by 查询

     操作Datatable  group by  查询

                    //获取统计图形数据
                    var dicleft = new Dictionary<string, DataTable>();
                    var query = from t in dataTableList[0].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);
  • 相关阅读:
    .NET Core MVC下的TagHelper
    测试.NET core MiddleWare 运行逻辑
    中台
    VSCode 完美整合前后端框架(angular2+.NET core)
    三分钟热度并非贬义
    【算法】莫队算法粗略讲解
    【题解】洋溢着希望
    【三角学】三角恒等变换公式推导
    【题解】方差
    【数据结构】FHQ Treap 详解
  • 原文地址:https://www.cnblogs.com/yisheng/p/5421940.html
Copyright © 2011-2022 走看看