SUM与计算,但没有过滤的数据表列 [英] SUM datatable column with compute but NO filter

查看:150
本文介绍了SUM与计算,但没有过滤的数据表列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这似乎当我把一个项目中来过滤工作,但我不希望添加一个过滤器,即只是高兴地总结列,仅此而已。

我试过传递的String.Empty和,但没有喜悦:

 对象objColTotal;
objColTotal = _dataSetDataTable.Compute(总和(价格),);
小数TOT = Convert.ToDecimal(objColTotal);


解决方案

这是空字符串应该工作。

您可以随时使用的过滤器,你一定会包括所有的记录。


在小数列快速测试:

  VAR DT =新的DataTable();
dt.Columns.Add(DecCol1的typeof(十进制));
dt.Columns.Add(StrCol1);
dt.Rows.Add(新的对象[] {1.1,R1});
dt.Rows.Add(新的对象[] {2.2,R2});
dt.Rows.Add(新的对象[] {3.3,R3});对象总和= dt.Compute(SUM(DecCol1),);
Console.WriteLine(总和);

我得到正确的答案:6.6

this seems to work when i put an item in it to filter, but i don't want to add a filter, ie just happy to sum the column and that's it.

i've tried passing in string.empty and "" but no joy:

object objColTotal;
objColTotal = _dataSetDataTable.Compute("Sum(Price)", "");
decimal tot = Convert.ToDecimal(objColTotal);

解决方案

An empty string should work.

You can always use a filter that you are certain will include all your records.


Quick test on a Decimal column:

var dt = new DataTable();
dt.Columns.Add("DecCol1", typeof(decimal));
dt.Columns.Add("StrCol1");
dt.Rows.Add(new object[] { 1.1, "r1"});
dt.Rows.Add(new object[] { 2.2, "r2" });
dt.Rows.Add(new object[] { 3.3, "r3" });

object sum = dt.Compute("SUM(DecCol1)", "");
Console.WriteLine(sum);

I get the correct answer: 6.6

这篇关于SUM与计算,但没有过滤的数据表列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆