在DataTable 中可能会涉及到各种各样的计算,其实我们可以使用DataTable.Compute方法

public Object Compute(string expression,string filter)

参数

expression
类型:String
要计算的表达式。 
filter
类型:String
要限制在表达式中进行计算的行的筛选器。 

返回值

类型:Object
设置为计算结果。


expression 参数需要聚合函数。例如,以下是合法表达式:

Count(Quantity)

但是以下表达式不合法:

Sum (Quantity * UnitPrice)

如果必须针对两列或多列执行操作,则应该创建 DataColumn,并将它的 Expression 属性设置为适当的表达式,然后针对结果列使用聚合表达式。在这种情况下,假定有一个名为“total”的 DataColumn,并且 Expression 属性设置为:

"Quantity * UnitPrice"

Compute 方法的表达式参数将为:

Sum(total)

第二个参数 filter 确定在表达式中使用哪些行。例如,如果该表包含名为“colDate”的日期列,则可用以下表达式限制这些行:

colDate > 1/1/99 AND colDate < 17/1/99

Eg:

//下面的示例针对标识号为五的销售人员,对名为“Total”的列的值求和。
private void ComputeBySalesSalesID(DataSet dataSet)
{// Presumes a DataTable named "Orders" that has a column named "Total."
    DataTable table;table = dataSet.Tables["Orders"];// Declare an object variable.object sumObject;sumObject = table.Compute("Sum(Total)", "EmpID = 5");
}

转载于:https://www.cnblogs.com/tmall/archive/2013/04/02/2996315.html

DataTable 中各种计算(笔记)相关推荐

  1. 在DataTable中创建计算列

    我们知道DataTable是内存中的一个表,可以用DataColumn和DataRow来构造一个DataTable,并且用DataColumn的Expression属性来创建计算列. (1)创建计算列 ...

  2. DataTable中Compute计算函数

    1 DataTable dt = new DataTable(); 2 //嵌套的三元运算 牛叉到五体投地 3 object obj = dt.Compute("iif(1000=5,100 ...

  3. DataTable中数据记录的统计

    DataTable中数据记录的统计 我们在使用Sql Server这些数据库时,可以轻松的通过Sum.Aver.Count等统计出相关结果,那么,在已经把数据检索出来的DataSet(DataTabl ...

  4. winfrom中DataGridView使用笔记

    DataGridView 密码列(显示为*号)的设置 需要在DataGridView的2个事件中写代码!下面的代码把第4列设置为密码列(显示为*号): 代码 1 /// <summary> ...

  5. transformer中attention计算方式_Reformer: 局部敏感哈希、可逆残差和分块计算带来的高效...

    最近要开始使用Transformer去做一些事情了,特地把与此相关的知识点记录下来,构建相关的.完整的知识结构体系, 以下是要写的文章,本文是这个系列的第九篇: Transformer:Attenti ...

  6. 【Python】可视化科学计算笔记

    可视化科学计算笔记 导入和初始化设置 SciPy库 leastsq函数--数据拟合 interp2d函数--插值优化 medfilt函数--信号处理(滤波) Mayavi库 空间曲面 -- 参考资料 ...

  7. awk,gawk调用shell,bash中的变量 笔记221106

    awk,gawk调用shell,bash中的变量 笔记221106 "'${变量名}'" 双 包 单 包 ${} 包 变量名 "'"${变量名}"'& ...

  8. matlab 牛顿向后差分,Matlab在时间序列分析中的应用--笔记

    <Matlab在时间序列分析中的应用--笔记>由会员分享,可在线阅读,更多相关<Matlab在时间序列分析中的应用--笔记(12页珍藏版)>请在人人文库网上搜索. 1.MATL ...

  9. 将DataTable中的数据保存到Excel

    如何快速将DataTable中的数据保存到Excel 遇到的问题 ① 保存到Excel的时间比较长,用户体验差 ② 保存失败(原因:Excel程序打开:或前一次调用Excel线程没有关闭,等) 开发环 ...

最新文章

  1. Linux k8s 启动 停止 查询状态 脚本
  2. Linux 思维导图整理(建议收藏)
  3. Burp Collaborator 使用总结
  4. 关于DataAccess Application block
  5. Python递归算法
  6. linux listen监听,Linux网络协议栈 -- socket listen监听
  7. 案例解析|政府信息化的BI建设应用
  8. JSTARS投稿学习笔记
  9. 传智播客 C/C++学习笔记 二级指针作为输出参数以及空间的释放
  10. Java设计模式——代理模式实现及原理
  11. python实现topsis法
  12. 洛谷——P1957 口算练习题
  13. win10便签常驻桌面_Win10下环境有哪些好用的便签记事本?想和iPhone一块儿用 - 学显...
  14. python求1到n的奇数和_编写程序。输入任意整数n,计算1到n的奇数和。C语言编写程序 输入整数N 显...
  15. 宾格代词-me、you_34
  16. 删除数组中的重复元素
  17. activated钩子函数
  18. Linux无法使用wget下载东西
  19. 简单记录下几家公司的面试经历(Java一年经验)
  20. 创建两个文本框,一个按钮。第 1 个文本框绑定任意键事件,敲击键盘任意可显示字符,在交互窗口中显示该字符;

热门文章

  1. [技巧]CSS的超级技巧大放送
  2. webpack4导入全局sass文件
  3. (进阶)LeetCode(119)——杨辉三角 II(JavaScript)
  4. express4.x中文文档
  5. 计算机网络学习笔记(7. 报文交换与分组交换①)
  6. VSCode无法写入用户设置 请打开用户设置并清除错误或警告, 然后重式
  7. 零基础带你学习MySQL—流程控制函数(十七)
  8. linux多个文件打包命令行,linux命令五十七之tar命令;linux多个文件压缩打包到一个压缩文件...
  9. 标准化工作及相关组织
  10. iCloud 是什么