DataTable.Compute?

说唱大师

新成员
已加入
2015年8月25日
留言内容
1
编程经验
Beginner
大家好,
我希望我为问题选择了正确的类别,但是如果没有,请原谅我是新来的。因此,至此...我已经使用OleDB连接加载了一个excel文件。该代码将excel文件加载到dataGridView。现在,我想使用数据表的值,求和,相乘,比较等等。在网上,我发现这样做的唯一静态方法
对象1 = DATATABLE.Compute("sum(NameOfTable)", "").ToString();

But since i load different excel files, i need a more 真正 way.
提前致谢
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,499
地点
悉尼,澳大利亚
编程经验
10+
Hello guys,
我希望我为问题选择了正确的类别,但是如果没有,请原谅我是新来的。

DataTable.Compute方法与OLE DB无关,因此有关它的问题属于ADO.NET论坛。我不确定这个问题现在仍会把我们引向何方,所以我现在将其留在这里。
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,499
地点
悉尼,澳大利亚
编程经验
10+
因此,至此...我已经使用OleDB连接加载了一个excel文件。该代码将excel文件加载到dataGridView。现在,我想使用数据表的值,求和,相乘,比较等等。在网上,我发现这样做的唯一静态方法
对象1 = DATATABLE.Compute("sum(NameOfTable)", "").ToString();

But since i load different excel files, i need a more 真正 way.
提前致谢

我不太确定你是什么意思"genuine"。 Compute方法的目的是计算针对DataTable的内容执行的聚合函数的结果,就像您在SQL代码中计算聚合一样。但是,它比真正的SQL实现有更多限制,并且文档可以告诉您它可以做什么和不能做什么。

您的代码实际上没有意义,因为您要在表上调用Compute,并且需要指定要求和的列,而不是表。如果要对两列的乘积求和,则可以指定这两列的乘积作为求和的参数。同样,请先阅读文档以了解该方法可以做什么和不能做什么。如果发现它无法满足您的需求,请发回邮件,并提供您想要的完整描述,因为您所说的内容含糊不清。可能是您需要使用特定的SQL查询,或者可能必须遍历DataTable的行,或者在复杂的情况下可能需要使用Office Automation。
 
最佳 底部