Compute
根据条件统计表中数据。
语法:
Compute(Expression, Filter)
Expression: 要计算的表达式,使用聚合函数进行统计。
Filter:
可选参数,用于设置计算条件,请参考表达式的运算符和函数
和 条件表达式。
在执行以下示例之前,请打开CaseStudy目录下的示例文件"统计演示.Table"。
示例一
计算总的销售数量和金额:
Dim Total As
Integer
Dim
Amount As
Double
With
DataTables("订单")
Total = .Compute("Sum(数量)")
Amount = .Compute("Sum(金额)")
End
With
Output.Show("数量:" & Total)
Output.Show("金额:"
& Amount)
示例二
计算产品PD01的销售数量:
Dim Total As
Long
Total = DataTables("订单").Compute("Sum(数量)", "产品 =
'PD01'")
Output.Show(Total)
示例三
计算每个客户的订购数量:
Dim dt As DataTable = DataTables("订单")
Dim
Total As
Integer
Dim
Customers As
List(Of
String)
Customers =
dt.GetUniqueValues("", "客户")
For Each Customer As String In Customers
Total = dt.Compute("Sum(数量)", "[客户] = '"
&
Customer
&
"'")
Output.Show(Customer
&
":"
&
Total)
Next
上述代码中,Filter参数分成了三部分,各部分用运算符&连接起来:
"[客户] = '"
& Customer & "'"
如果客户名称为CS01,那么三部分组合后,Filter参数就等于:
"[客户] = 'CS01'"
通过代码动态合成条件表达式,是一种基本的技能,大家务必要掌握。