平均分代碼是什么?
average 命令,計算數值表達式或字段的算術平均值。
語法
AVERAGE [ExpressionList] [Scope] [FOR lExpression1] [WHILE lExpression2]
[TO MemVarList | TO ARRAY ArrayName] [NOOPTIMIZE]
參數
ExpressionList
指定求平均值的表達式。ExpressionList 可以是用逗號分隔的表字段或包含表字段的數值表達式。
Scope
指定求平均值的記錄或記錄范圍。只有在指定范圍內的記錄才參加求平均值運算。
Scope 子句可以為 :ALL、NEXT nRecords、RECORD nRecordNumber 和 REST。默認的 Scope(范圍)為所有記錄。
有關 Scope 子句的詳細內容,請參閱 Scope 子句 主題或《開發指南》的第二章“語言概述”。包含 Scope 子句的命令僅處理活動工作區中的表。
FOR lExpression1
指定只有滿足邏輯條件 lExpression1 的記錄才參與計算。這樣可以篩選出不想要的記錄。
如果 lExpression 是可優化的表達式,Rushmore 技術將優化 AVERAG FOR 查詢。若要獲得最佳性能,應在 FOR 子句中使用可優化的表達式。有關 Rushmore 可優化表達式的詳細內容,請參閱 SET OPTIMIZE和掌握 Rushmore 技術,以及《開發指南》的第十七章“優化程序”。
WHILE lExpression2
指定只要邏輯表達式 lExpression2 為“真”(.T.),記錄就參與運算。直到遇到第一個使 lExpression2 計算得“假”(.F.) 為止。
TO MemVarList
指定保存平均值結果的內存變量或數組元素的列表。
TO ARRAY ArrayName
指定保存平均值結果的一維數組。一維數組可以在使用 average 命令前創建。
如果指定數組不存在,Visula FoxPro 將自動創建該數組。如果數組存在,但大小不能包含所有結果,Visula FoxPro 將自動根據信息量增加數組大小。
NOOPTIMIZE
取消 average 命令的 Rushmore 優化。有關的詳細內容,請參閱 SET OPTIMIZE 和掌握 Rushmore 技術,或《開發指南》的第十七章“優化程序”。
說明
除非包含可選的表達式列表,否則選定表的所有字段都將參與求平均值的運算。如果 SET TALK 為 ON,結果顯示在屏幕上。如果 SET HEADINGS 為 ON,字段名或包括字段名的表達式將顯示在結果的上面。