Datatable 列查询,统计值
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:46
Column 列查询,如下:
var dt = CommonUtil.ToDataTable(dataJson);
//判断是否有当前日期数据
var systemDateTime = new CommonProperty().SystemDateTime;
DataRow[] drArray = dt.Select(string.Format("COL_ActDate>='{0}' and COL_ActDate<'{1}'",
systemDateTime.Date.ToString("yyyy-MM-dd HH:mm:ss"),
systemDateTime.Date.AddDays(1).ToString("yyyy-MM-dd HH:mm:ss")));
if (!drArray.Any()) throw new Exception("数据中没有当前日期数据无法保存"); var dicUpdate=new Dictionary<decimal, decimal?>();
var addList = new List<CraftParaActEntity>();
foreach (var column in dt.Columns)
{
string strColumn = column.ToString();
if (!strColumn.Contains("COL_Value_")) continue;
string strColumnId = string.Format("COL_CraftParaActId_{0}", strColumn.Replace("COL_Value_", ""));
DataRow[] drIdArray = dt.Select(string.Format("{0} is not null", strColumnId));
decimal columnId = decimal.Parse(drIdArray[0][strColumnId].ToString());
decimal craftParaId = CraftParaActDALService.QuerySingleCraftParaAct(columnId).CraftParaId;
}
计算列中的统计值,使用聚合函数,此列应是int,decimal可计算的数据类型,如下:
var maxValue = dt.Compute(string.Format("max({0})", strColumn), "true");
var minValue = dt.Compute(string.Format("min({0})", strColumn), "true");
var avgValue = dt.Compute(string.Format("avg({0})", strColumn), "true");
相关文章
-
DataTable 转换成 Json的3种方法
DataTable 转换成 Json的3种方法
- 互联网
- 2026年04月04日
-
dataway 拦截静态页面
dataway 拦截静态页面
- 互联网
- 2026年04月04日
-
DAX 表达式(Data Analysis Expressions)
DAX 表达式(Data Analysis Expressions)
- 互联网
- 2026年04月04日
-
Datahub新版本0.9.1更新,列级别数据血缘功能发布!
Datahub新版本0.9.1更新,列级别数据血缘功能发布!
- 互联网
- 2026年04月04日
-
DataHub——实时数据治理平台
DataHub——实时数据治理平台
- 互联网
- 2026年04月04日
-
DataGridView导入导出excel
DataGridView导入导出excel
- 互联网
- 2026年04月04日






