汇总函数的条件
以下是每个汇总函数的条件列表:
布尔型条件 |
|
日期条件 |
|
时间条件 |
|
Sum
Basic 语法和 Crystal 语法。
重载
- Sum (fld)
- Sum (fld, condFld)
- Sum (fld, condFld, cond)
- Sum (x)
参数
- fld 是可由函数求值的任何有效的数据库字段或公式字段。
- condFld 是用于对 fld 中的值进行分组时所依据的字段。
- cond 是表明 condFld 分组类型的字符串。只能在 condFld 是一个日期、时间、日期时间或布尔字段时才指定此参数。有关此参数有效字符串的详细信息,参见汇总函数的条件。
- x 是可由正在使用的函数求值的数字或货币值的数组。
返回
数字
操作
使您能够添加报表中出现的值。例如:
- 如果销售报表包含一个显示每张订单金额的字段,则可以计算报表上出现的所有订单的总和(总计和)。
- 如果对订单进行分组(例如,按订单所来自的省份对其分组),则可以计算每组订单金额的总和(在本例中,为每个省)。
- 如果将订单按日期或布尔值分组(例如,对订单按其发出的月份进行分组),则可以根据日期字段或布尔字段中的特定变化来计算每组订单金额的总和(在本例中,为每月)。
- 如果指定单个值的集合,则也可以计算该集合中值的总和。有关这种汇总的详细信息,参见 数组汇总函数。
示例
下列示例适用于 Basic 语法和 Crystal 语法:
Sum({file.QTY})
计算 QTY 字段中所有值的总和。
Sum({订单.金额}, {订单.客户 ID})
对“金额”字段中每个订单组的订单求和(总计)。每当“客户 ID”字段中的值变化时,订单都将进行分组。
Sum({订单.金额}, {订单.日期}, "monthly") % Sum({订单.金额 })
对“金额”字段中的值按月分组,并计算每个月组中值的总和相对于整个报表值的总和的百分比。
Sum([{file.AMOUNT}, {file.PRICE}, {file.COST}])
“金额”、“价格”和“费用”字段中值的总和。
注意: 在公式中使用此函数强制在打印时对公式求值。有关求值时间考虑因素的详细信息,参见求值时间。
Average
Basic 语法和 Crystal 语法。
重载
- Average (fld)
- Average (fld, condFld)
- Average (fld, condFld, cond)
- Average (x)
参数
- fld 是可由函数求值的任何有效的数据库字段或公式字段。
- condFld 是用于对 fld 中的值进行分组时所依据的字段。
- cond 是表明 condFld 分组类型的字符串。只能在 condFld 是一个日期、时间、日期时间或布尔字段时才指定此参数。有关此参数有效字符串的详细信息,参见汇总函数的条件。
- x 是可由正在使用的函数求值的数字或货币值的数组。
返回
数字
操作
使您能够对报表中出现的值求平均值。例如:
- 如果销售报表包含显示每个订单金额的字段,则可以计算该报表上出现的所有订单的平均值(总计平均值)。
- 如果将订单进行分组(例如,对订单按其来自的省份进行分组),则可以计算每组订单的平均金额(在本例中,为每个省)
- 如果将订单按日期或布尔值分组(例如,按订单发出的月份分组),则可以根据日期字段或布尔字段中的特定变化来计算每组订单的平均金额(在本例中,为每月)。
- 如果指定单个值的数组,则也可以计算该集合的平均值。有关这种汇总的详细信息,参见 数组汇总函数。
示例
下列示例适用于 Basic 语法和 Crystal 语法:
Average({订单.订单金额})
计算“金额”字段中所有值的平均值。
Average ({订单.订单金额}, {客户.客户 ID})
得到向每个客户销售的平均金额。
下列示例适用于 Crystal 语法:
Average ([10,12,32,48])
计算一个常量数组中值的平均值。
注意: 在公式中使用此函数强制在打印时对公式求值。有关求值时间考虑因素的详细信息,参见求值时间。
StdDev
Basic 语法和 Crystal 语法。
重载
- StdDev (fld)
- StdDev (fld, condFld)
- StdDev (fld, condFld, cond)
- StdDev (x)
参数
- fld 是可由函数求值的任何有效的数据库字段或公式字段。
- condFld 是用于对 fld 中的值进行分组时所依据的字段。
- cond 是表明 condFld 分组类型的字符串。只能在 condFld 是一个日期、时间、日期时间或布尔字段时才指定此参数。有关此参数有效字符串的详细信息,参见汇总函数的条件。
- x 是可由正在使用的函数求值的数字或货币值的数组。
返回
数字
操作
使您能够得到报表中一组值的标准偏差。例如:
- 您可以计算某个字段中所有值的总计标准偏差。
- 您可以计算某个组内所有值的标准偏差(例如,对销售按来自的省进行分组)。
- 您可以计算其分组是由日期或布尔字段中的更改进行控制的组内所有值的标准偏差(例如,对销售按其发生的月份分组)。
- 如果指定单个值的集合,则可以计算该集合中值的标准偏差。有关这种汇总的详细信息,参见 数组汇总函数。
示例
下列示例适用于 Basic 语法和 Crystal 语法:
StdDev({file.RESULTS})
计算“结果”字段中所有值的标准偏差。
StdDev({订单.金额}, {订单.客户 ID})
计算“订单”字段每组订单中订单的标准偏差。每当“客户”字段的值变化时,订单都将进行分组。
StdDev({file.RESULTS}, {file.DATE}, "daily")
计算“结果”字段中每组试验测试结果的偏差。每当“日期”字段中的值更改为新的日期时,测试结果都将进行分组。
StdDev({file.SCORES}, {file.NATURALIZED}, "any change")
根据测试者是否属于某一国籍,对“分数”字段中的值进行分组,并计算每组分数的标准偏差。
下列示例适用于 Crystal 语法:
StdDev([({file.QTY1} * {file.PRICE1}),({file.QTY2} * {file.PRICE2}),({file.QTY3} * {file.PRICE3}), ({file.QTY4} * {file.PRICE4})])
返回 36.60,其中 Qty1 = 2,Price1 = 10.00,Qty2 = 2,Price2 = 2.00,Qty3 = 10,Price3 = 3.00 及 Qty4 = 8,Price4 = 11.00。
注释
标准偏差是使用如下方法计算出来的:
- 计算样本中项目的平均值。
- 从每个项目的值中减去平均值。
- 求每个项目差值的平方。
- 将样本中所有项目的差值平方相加。
- 将总和除以示例中项目数减 1 (N - 1)。结果为方差。将此步与 PopulationStdDev 进行比较。
- 计算方差的平方根以得到标准偏差。
注意: 在公式中使用此函数强制在打印时对公式求值。
有关求值时间考虑因素的详细信息,参见求值时间。
PopulationStdDev
Basic 语法和 Crystal 语法。
重载
- PopulationStdDev (fld)
- PopulationStdDev (fld, condFld)
- PopulationStdDev (fld, condFld, cond)
- PopulationStdDev (x)
参数
- fld 是可由函数求值的任何有效的数据库字段或公式字段。
- condFld 是用于对 fld 中的值进行分组时所依据的字段。
- cond 是表明 condFld 分组类型的字符串。只能在 condFld 是一个日期、时间、日期时间或布尔字段时才指定此参数。
有关此参数有效字符串的详细信息,参见汇总函数的条件。
- x 是可由正在使用的函数求值的数字或货币值的数组。
返回
数字
操作
使您能够得到报表中一组值的总体标准偏差。例如:
- 您可以计算某个字段中所有值的总计总体标准偏差。
- 您可以计算某个组内所有值的总体标准偏差(例如,对销售按其来自的省进行分组)。
- 您可以计算其分组是由日期字段或布尔字段的变化所控制(例如,对销售按其完成的月份进行分组)的组中所有值的总体标准偏差。
- 如果指定单个值的集合,则可以计算该集合值的总体标准偏差。有关这种汇总的详细信息,参见 数组汇总函数。