DVar 和 DVarP 函數(shù)用于估算特定記錄集(一個域)中一組值的方差??梢栽?Visual Basic、宏、查詢表達(dá)式、窗體或報表上的計算控件中使用 DVar 和 DVarP 函數(shù)。
DVarP 函數(shù)用于計算總體的方差,而 DVar 函數(shù)用于計算總體抽樣的方差。
例如,可以使用 DVar 函數(shù)來計算一組學(xué)生考試成績的方差。
DVar(expr, domain, [criteria])
DVarP(expr, domain, [criteria])
DVar 和 DVarP 函數(shù)具有以下參數(shù):
參數(shù) |
說明 |
expr |
字符串表達(dá)式,用于標(biāo)識要在其中計算方差的數(shù)值字段。可以是用于標(biāo)識表或查詢中字段的字符串表達(dá)式,也可以是以該字段中的數(shù)據(jù)進(jìn)行計算的表達(dá)式。在 expr 中可以包括表中字段的名稱、窗體上的控件、常量或函數(shù)。如果 expr 包含函數(shù),那么它可以是內(nèi)置的,也可以是用戶定義的,但不能是另一個域聚合函數(shù)或 SQL 聚合函數(shù)。 |
字符串表達(dá)式,代表組成域的記錄集??梢允潜砻Q或不需要參數(shù)的查詢的查詢名稱。 |
|
criteria |
可選的字符串表達(dá)式,用于限制 DVar 和 DVarP 函數(shù)執(zhí)行的數(shù)據(jù)范圍。例如,criteria 通常等價于 SQL 表達(dá)式中的 WHERE 子句,只是不含 WHERE 關(guān)鍵字。如果忽略 criteria,DVar 和 DVarP 函數(shù)將在整個域范圍內(nèi)計算 expr。任何包含在 criteria 中的字段必須同時也是 domain 中的字段,否則 DVar 和 DVarP 函數(shù)將返回 Null。 |
如果 domain 引用的記錄少于兩條,或者滿足 criteria 的記錄少于兩條,DVar 和 DVarP 函數(shù)將返回 Null,表示不能計算方差。
無論是在宏、模塊、查詢表達(dá)式,還是在計算控件中使用 DVar 和 DVarP 函數(shù),都必須謹(jǐn)慎構(gòu)造 criteria 參數(shù)以確保能夠正確地進(jìn)行計算。
在選擇查詢的“條件”行、查詢中的計算字段表達(dá)式中,或更新查詢的“更新到”行中均可以使用 DVar 和 DVarP 函數(shù)指定條件。
注釋 可以在總計查詢的計算字段表達(dá)式中使用 DVar 和 DVarP 函數(shù)或 Var 和 VarP 函數(shù)。如果使用 DVar 或 DVarP 函數(shù),將在數(shù)據(jù)分組之前計算方差。如果使用 Var 或 VarP 函數(shù),則在分組之后計算字段表達(dá)式中值的方差。
當(dāng)需要指定 criteria 來限制函數(shù)執(zhí)行的數(shù)據(jù)范圍時,可在計算控件中使用 DVar 和 DVarP 函數(shù)。例如,要顯示運(yùn)到 California 的訂單的方差,可將文本框的“控件來源”屬性設(shè)為如下表達(dá)式:
=DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'")
如果只是在 domain 的所有記錄中查找標(biāo)準(zhǔn)差,可使用 Var 或 VarP 函數(shù)。
注釋 在使用該函數(shù)時,將不包括對 domain 記錄的未保存更改。如果希望 DVar 或 DVarP 函數(shù)基于更改后的數(shù)據(jù),必須先保存更改。方法是:單擊“記錄”菜單上的“保存記錄”、將焦點(diǎn)移動到另一條記錄,或使用 Update 方法。
下面的示例返回運(yùn)往英國的訂單總體和總體抽樣的方差估算值。域是“Orders”表。criteria 參數(shù)將記錄集的結(jié)果限制為“ShipCountry”等于 UK 的記錄。
Dim dblX As Double
Dim dblY As Double
' Sample estimate.
dblX = DVar("[Freight]", "Orders", "[ShipCountry] = 'UK'")
' Population estimate.
dblY = DVarP("[Freight]", "Orders", "[ShipCountry] = 'UK'")
下一個示例在 criteria 參數(shù)中使用一個變量 strCountry 來返回估算值。請注意單引號(')在字符串表達(dá)式中使用,使得字符串連接時,將字面字符串“UK”包含在單引號中。
Dim strCountry As String|
Dim dblX As Double
strCountry = "UK"
dblX = DVar("[Freight]", "Orders", "[ShipCountry] = '" _
& strCountry & "'")