SQLCompute
DataTable的SQLCompute方法和Compute方法类似,不过Compute用于计算已经加载的数据,而SQLCompute用于计算后台所有数据。
语法:
SQLCompute(Expression, Filter)
Expression:
要计算的表达式,使用聚合函数进行统计。
Filter: 可选参数,用于设置计算条件,采用的是SQL语法,和常规表达式的语法有所不同,请参考:SQL表达式的语法差异。
示例一
统计产品PD01的销售数量:
Dim
Val
As
Integer
Val =
DataTables("订单").SQLCompute("Sum(数量)","产品
= 'PD01'")
Output.Show(Val)
不管PD01的订单是否加载,上面的代码都能得出正确的结果。
示例二
统计雇员EP01成交的订购数量超过500的订单数:
Dim
cnt As
Integer
cnt =
DataTables("订单").SQLCompute("Count(*)",
"雇员 = 'EP01' And 数量 > 500")
Output.Show("订单数:"
& cnt)
示例三
和Compute不同,SQLCompute不能统计表达式列,因为表达式列在后台数据库并不存在。
不过没关系,因为SQLCompute可以直接对表达式进行统计,例如统计产品PD01的销售金额:
Dim
Val
As
Double
Val =
DataTables("订单").SQLCompute("Sum(数量
* 单价 * (1 - 折扣))","产品
= 'PD01'")
Output.Show(Val)