DataTable的Compute方法和Expression语法

简介:

DataTable的Compute的功能可谓强大。

public object Compute(
 string expression,
 string filter
);

expression:要执行计算的表达式

filter:过滤表达式

这两个表达式都是用Sql语法,例如:

table.Compute("sum(count)", "count>0");

当我们的table中有count和price列时,如果要计算总金额,应该如何写表达式呢?

table.Compute("sum(count*price)", "");

你肯定会想到这样计算,但这样是错误的。我们应该使用表达式,先添加每一行的金额列,然后再计算总金额:

table.Columns.Add("total", typeof(decimal), "count*price");
table.Compute("total", "");

这个时侯才能得出总的金额。




本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2012/05/29/2524075.html,如需转载请自行联系原作者

相关文章
|
7月前
|
存储 监控 安全
Veeam Backup & Replication 13 之初见 - 基于 Linux 和 Web 控制台
Veeam Backup & Replication 13 之初见 - 基于 Linux 和 Web 控制台
491 1
Veeam Backup & Replication 13 之初见 - 基于 Linux 和 Web 控制台
Unity精华☀️GetInstanceID 和 GetHashCode 的区别
Unity精华☀️GetInstanceID 和 GetHashCode 的区别
|
消息中间件 数据库
RabbitMQ启动报错:Error during startup: {error, {schema_integrity_check_failed,
通过上述步骤,可以逐步排查和解决RabbitMQ启动时出现的 `Error during startup: {error, {schema_integrity_check_failed, ...}}`错误。这些步骤包括检查磁盘空间、修复文件权限、清理Mnesia数据库、检查日志文件以及升级或重装RabbitMQ。希望这些方法能帮助您解决问题,使RabbitMQ顺利启动并正常运行。
929 1
|
设计模式 开发框架 前端开发
基于DevExpress的GridControl实现的一些界面处理功能
基于DevExpress的GridControl实现的一些界面处理功能
|
图形学
【unity小技巧】受伤屏幕闪红、死亡动画、死亡黑屏效果
【unity小技巧】受伤屏幕闪红、死亡动画、死亡黑屏效果
927 2
|
JavaScript 前端开发
three.js 官方给的压缩包如何使用?three.js基础官方文件使用方法
three.js 官方给的压缩包如何使用?three.js基础官方文件使用方法
443 0
|
开发工具 开发者 git
2023 Visual Studio Code 插件推荐:18 个提高开发效率的常用插件
Visual Studio Code (简称VSCode) 是一款强大的开源代码编辑器,它拥有众多功能强大的扩展插件,使得开发者可以根据自己的需求来定制编辑器的功能和外观。在本文中,我们将分享一些非常实用的 VSCode 插件,这些插件将提高您的开发效率,使编码变得更加愉快。
963 0
|
存储 缓存
若依项目如何实现一个账户只能一个人登录(汇总)
若依项目如何实现一个账户只能一个人登录(汇总)
2320 0
|
存储 SQL API
VB中判断空的几种方法,Null, Missing, Empty, Nothing, vbNullString区别
VB中判断空的几种方法,Null, Missing, Empty, Nothing, vbNullString区别

热门文章

最新文章