Funkcijos DStDev, DStDevP

Taikoma
„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Funkcijas DStDev ir DStDevP galite naudoti norėdami įvertinti nurodyto įrašų rinkinio (domeno) reikšmių rinkinio standartinį nuokrypį. Funkcijas DStDev ir DStDevP naudokite "Visual Basic for Applications" (VBA) modulyje, makrokomandoje, užklausos reiškinyje arba skaičiavimų valdiklyje formoje arba ataskaitoje.

Funkciją DStDevP naudokite aibei įvertinti, o funkciją DStDev – aibės pavyzdžiui įvertinti.

Pavyzdžiui, modulyje galite naudoti funkciją DStDev , kad apskaičiuotumėte studentų testo balų rinkinio standartinį nuokrypį.

Sintaksė

DStDev(išraiška, domenas [, kriterijai] )

DStDevP(išraiška, domenas [, kriterijai] )

Funkcijos DStDev ir DStDevP turi šiuos argumentus:

Argumentas Aprašymas
expr Būtinas. Reiškinys, identifikuojantis skaitinį lauką, kuriame norite rasti standartinį nuokrypį. Tai gali būti eilutės reiškinys, identifikuojantis lauką iš lentelės ar užklausos, arba reiškinys, atliekantis duomenų skaičiavimus tame lauke. Išraiškoje galite įtraukti lentelės lauko pavadinimą, formos valdiklį, konstantą arba funkciją. Reiškinyje esanti funkcija gali būti įtaisytoji arba apibrėžta vartotojo, tačiau negali būti kito domeno agregavimo ar SQL agregavimo funkcija.
domenas Būtinas. Eilutės reiškinys, identifikuojantis domeną sudarančių įrašų rinkinį. Tai gali būti lentelės pavadinimas arba užklausos, kuriai nebūtinas parametras, pavadinimas.
kriterijai Pasirinktinis. Eilutės reiškinys, naudojamas apriboti duomenų diapazoną, kuriame atliekama funkcija DStDev arba DStDevP . Pavyzdžiui, kriterijai dažnai yra sąlygos WHERE atitikmuo SQL užklausoje, be žodžio WHERE. Jei kriterijai nenurodyti, funkcijos DStDev ir DStDevP įvertina reiškinį pagal visą domeną. Bet koks kriterijus įtrauktas laukas taip pat turi būti domeno laukas; priešingu atveju funkcijos DStDev ir DStDevP grąžins Null.

Pastabos

Jei domenas nurodo mažiau nei du įrašus arba jei mažiau nei du įrašai atitinka kriterijus, funkcijos DStDev ir DStDevP grąžina Null, nurodantį, kad standartinio nuokrypio apskaičiuoti negalima.

Nesvarbu, ar funkciją DStDev ar DStDevP naudojate makrokomandoje, modulyje, užklausos reiškinyje ar skaičiavimų valdiklyje, kriterijų argumentą turėtumėte sudaryti atidžiai, siekdami užtikrinti, kad jis bus įvertintas teisingai.

Galite naudoti funkcijas DStDev ir DStDevP , kad nurodytumėte kriterijus atrankos užklausos eilutėje Kriterijai. Pvz., galite sukurti užklausą lentelėse Užsakymai ir Produktai, kad matytumėte visus produktus, kurių transportavimo išlaidos viršijo vidurkį pridėjus standartinį transportavimo savikainos nuokrypį. Kriterijų eilutėje po lauku Krovinys būtų šis reiškinys:

>(DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

Funkcijas DStDev ir DStDevP galite naudoti užklausos apskaičiavimo lauke, reiškinyje arba naujinimo užklausos eilutėje Naujinti į.

Pastaba

Sumos užklausos apskaičiuotojo lauko reiškinyje galite naudoti funkcijas DStDev ir DStDevP arba funkcijas StDev ir StDevP . Jei naudojate funkciją DStDev arba DStDevP , reikšmių suma apskaičiuojama iki duomenų grupavimo. Jei naudojate funkciją StDev arba StDevP , duomenys sugrupuojami iki reikšmių, esančių lauko reiškinyje, įvertinimo.

Funkciją DStDev ir DStDevP naudokite skaičiavimų valdiklyje, kai norite nurodyti kriterijus, ribojančius duomenų diapazoną, su kuriuo atliekama funkcija. Pavyzdžiui, norėdami rodyti užsakymų, siunčiamų į Kaliforniją, standartinį nuokrypį, nustatykite teksto lauko ypatybę ControlSource į šį reiškinį:

=DStDev("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Jei tiesiog norite rasti standartinį nuokrypį visuose domeno įrašuose, naudokite funkciją StDev arba StDevP .

Patarimas Jei lauko, iš kurio gaunama išraiška, duomenų tipas yra skaičius, funkcijos DStDev ir DStDevP grąžina duomenų tipą Dvigubas. Jei funkciją DStDev arba DStDevP naudojate skaičiavimų valdiklyje, į reiškinį įtraukite duomenų tipo konvertavimo funkciją, kad pagerintumėte našumą.

Pastaba

Naudojant šias funkcijas, neįrašyti domeno įrašų pakeitimai neįtraukiami. Jei norite, kad funkcijos DStDev arba DStDevP būtų pagrįstos pakeistomis reikšmėmis, pirmiausia pakeitimus turite įrašyti skirtuko Duomenys dalyje Įrašai spustelėdami Įrašyti įrašą, pereidami į kitą įrašą, ar naudodami metodą Naujinimas.

Užklausų pavyzdžiai

Išraiška Rezultatai
SELECT DStDev("vieneto_kaina","productSales","vieneto_kaina>140") AS Expr1, DStDevP("vieneto_kaina","productSales","vieneto_kaina<140") AS Expr2 FROM productSales GROUP BY DStDev("vieneto_kaina","productSales","vieneto_kaina>140"), DStDevP("vieneto kaina","productSales","vieneto_kaina<140"); Apskaičiuoja "UnitPrice" Standard Nuokrypį (atsižvelgiant į te pateiktus duomenis kaip pavyzdį) nuo lentelės "ProductSales", kur "Unitprice" yra didesnis už 140 ir rodo rezultatą Expr1. Taip pat apskaičiuoja "Vieneto_kaina" Standard nuokrypį (atsižvelgiant į pateiktus duomenis kaip į visą aibę), kai "vieneto_kaina" yra mažesnė nei 140 ir rodo rezultatus Išraiška2.
SELECT DStDev("vieneto_kaina","productSales","vieneto_kaina>140") AS DstDev, DStDevP("vieneto kaina","productSales","vieneto_kaina<140") AS DstDevP FROM productSales GROUP BY DStDev("vieneto_kaina","productSales","vieneto kaina>140"), DStDevP("vieneto kaina","productSales","vieneto_kaina<140"); Apskaičiuoja "UnitPrice" Standard nuokrypį (atsižvelgiant į te pateiktus duomenis kaip pavyzdį) nuo lentelės "ProductSales", kur "unitprice" yra didesnis už 140 ir rodo rezultatą DstDev. Taip pat apskaičiuoja "UnitPrice" Standard Nuokrypį (atsižvelgiant į pateiktus duomenis kaip visą aibę), kai "UnitPrice" yra mažesnė nei 140 ir rodo rezultatus DstDevP.

VBA pavyzdys

Pastaba

Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.

Toliau pateiktame pavyzdyje pateikiami aibės standartinio nuokrypio ir užsakymų, pristatytų į Jungtinę Karalystę, aibės imties įverčiai. Domenas yra lentelė Užsakymai. Kriterijų argumentas apriboja gaunamą įrašų rinkinį iki tų, kurių ShipCountryRegion reikšmė yra JK.

Dim dblX As Double
Dim dblY As Double
' Sample estimate.
dblX = DStDev("[Freight]", "Orders", _
    "[ShipCountryRegion] = 'UK'")
' Population estimate.
dblY = DStDevP("[Freight]", "Orders", _
    "[ShipCountryRegion] = 'UK'")

Kitame pavyzdyje apskaičiuojami tie patys įvertinimai naudojant kintamąjį strCountryRegionkriterijų argumente. Atkreipkite dėmesį, kad į eilutės reiškinį įtraukiami viengubų kabučių simboliai ('), kad sujungus eilutes, raidinė UK eilutė būtų tarp viengubų kabučių.

Dim strCountryRegion As String
Dim dblX As Double
Dim dblY As Double
strCountryRegion = "UK"
dblX = DStDev("[Freight]", "Orders", _
    "[ShipCountryRegion] = '" & strCountryRegion & "'")
dblY = DStDevP("[Freight]", "Orders", _
    "[ShipCountryRegion] = '" & strCountryRegion & "'")