在foxpro中,sum是什么意思?他的数值字段和数值字段表达式一样吗?又比如:数值表达式表缺省则对所

在foxpro中,sum是什么意思?他的数值字段和数值字段表达式一样吗?又比如:数值表达式表缺省则对所有数值字段做累加,是什么意思呢?请说明谢谢

sum是VFP的一个求和命令,用于对当前选定表的指定数值字段或全部数值字段进行求和。
搜索内容可以是数值字段,也可以是数值字段表达式。
如果数值表达式表缺省,则对该选定表内的所有属于数值字段的都做累加。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-30
sum命令
示例 请参阅

对当前选定表的指定数值字段或全部数值字段进行求和。

语法

SUM [eExpressionList]
[Scope] [FOR lExpression1] [WHILE lExpression2]
[TO MemVarNameList | TO ARRAY ArrayName]
[NOOPTIMIZE]

参数
eExpressionList

指定要总计的一个或多个字段或者字段表达式。如果省略字段表达式列表,则总计所有数值型字段。

Scope

指定要总计的记录范围。范围子句有:ALL、NEXT nRecords、RECORD nRecordnumber 和REST。关于作用域子句的详细内容,请参阅 Scope 子句主题或《开发指南》的第二章“语言概述”。
SUM 默认的范围是所有记录 (ALL)。

FOR lExpression1

指定对逻辑条件 lExpression1 值为“真”(.T.) 的记录才进行总计。包含 FOR 子句可以有条件地总计记录,筛选出不想要的记录。
如果 lExpression1 是一个可优化表达式,那么 Rushmore 可以优化 SUM ... FOR命令。为了获得最佳性能,请在 FOR 子句中使用可优化表达式。关于 Rushmore 优化的详细内容,请参阅 SET OPTIMIZE 和深入了解 Rushmore 技术主题或者《开发指南》的第十五章“优化应用程序”。

WHILE lExpression2

指定一个条件,在当前表中只对逻辑表达式 lExpression2 为“真” (.T.) 的记录进行总计。

TO MemVarNameList

将每个总计值存入一个内存变量。如果 MemVarNameList 中指定的内存变量不存在,则 Visual FoxPro 自动创建,列表中的内存变量名用逗号分隔。

TO ARRAY ArrayName

将总计值存入内存变量数组中,如果在 sum命令中指定的数组不存在,则 Visual FoxPro 自动创建;如果数组存在但太小,不能包含所有的总计值,那么自动增加数组的大小以存放总计值。

NOOPTIMIZE

关于关闭 Rushmore 优化的详细内容,请参阅 SET OPTIMIZE 和深入了解 Rushmore 技术主题或者《开发指南》的第十五章“优化应用程序”。

参考资料:http://www.feiesoft.com/VisualFoxPro/lngsum.htm