我有一个名为“ Jul”的列,其中包含一些值,例如“ 123”和“-”。我试图通过添加值并忽略“-”来获取列的总和。我尝试过:
st.x *= iResolution.x/iResolution.y;
但是我遇到错误:object julysum;
julysum = Convert.ToDouble(FormattedPurchaseSummaryTable.Compute("SUM(Jul)", "Jul != '-'"));
我该如何解决此错误?
答案 0 :(得分:3)
没有!=
运算符。
您可能想要<>
。
请在此处阅读有关可用的运算符的更多信息:https://docs.microsoft.com/en-us/dotnet/api/system.data.datacolumn.expression?redirectedfrom=MSDN&view=netframework-4.7.2#operators
答案 1 :(得分:1)
Blam's answer已经为您指明了表达语言。解决了第一个问题之后,我们需要解决第二个问题,即Jul
是一个字符串,而不是整数(或浮点数,等等)。因此,我们也需要对其进行转换。
但是,我认为Compute
不会支持SUM
中的复杂表达式来执行CONVERT
。
所以我认为您需要做的是添加一个新的DataColumn
,其表达式如下:
IIF(Jul != '-',CONVERT(Jul,'System.Int32'),0)
然后在这个新列上计算SUM
。