Funktionen DStDev og DStDevP

Gælder for
Access til Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Du kan bruge funktionerne DStDev og DStDevP til at beregne standardafvigelsen på tværs af et sæt værdier i et bestemt sæt poster (et domæne). Brug funktionerne DStDev og DStDevP i et VBA-modul (Visual Basic for Applications), en makro, et forespørgselsudtryk eller et beregnet kontrolelement i en formular eller rapport.

Brug funktionen DStDevP til at evaluere en population og funktionen DStDev til at evaluere en stikprøve af populationen.

For eksempel kan du bruge funktionen DStDev i et modul til at beregne standardafvigelsen på tværs af en række elevers prøveresultater.

Syntaks

DStDev(udtryk, domæne [, kriterier] )

DStDevP(udtryk, domæne [, kriterier] )

Funktionerne DStDev og DStDevP har følgende argumenter:

Argument Beskrivelse
udtryk Påkrævet. Et udtryk, der identificerer det numeriske felt, som du vil finde standardafvigelsen for. Det kan være et strengudtryk, der identificerer et felt fra en tabel eller forespørgsel, eller det kan være et udtryk, der udfører en beregning på data i det pågældende felt. I udtryk kan du medtage navnet på et felt i en tabel, et kontrolelement i en formular, en konstant eller en funktion. Hvis udtryk indeholder en funktion, kan den enten være indbygget eller brugerdefineret, men ikke en anden domæneaggregat- eller SQL-aggregeringsfunktion.
domæne Påkrævet. Et strengudtryk, der identificerer det sæt af poster, der udgør domænet. Det kan være et tabelnavn eller et forespørgselsnavn til en forespørgsel, der ikke kræver en parameter.
kriterier Valgfrit. Et strengudtryk, der bruges til at begrænse det dataområde, hvor funktionen DStDev eller DStDevP udføres. Eksempelvis svarer kriterier ofte til WHERE-delsætningen i et SQL-udtryk uden ordet WHERE. Hvis kriterier udelades, evaluerer funktionerne DStDev og DStDevPudtryk mod hele domænet. Alle felter, der er inkluderet i kriterier , skal også være et felt i domæne. Ellers returnerer funktionerne DStDev og DStDevP en Null-værdi.

Bemærkninger

Hvis domæne refererer til færre end to poster, eller hvis færre end to poster opfylder kriterier, returnerer funktionerne DStDev og DStDevP en Null-værdi, der angiver, at der ikke kan beregnes en standardafvigelse.

Uanset om du bruger funktionen DStDev eller DStDevP i en makro, et modul, et forespørgselsudtryk eller et beregnet kontrolelement, skal du konstruere argumentet kriterier omhyggeligt for at sikre, at det evalueres korrekt.

Du kan bruge funktionerne DStDev og DStDevP til at angive kriterier i rækken Kriterier i en udvælgelsesforespørgsel. Du kan f.eks. oprette en forespørgsel på tabellen Ordrer og tabellen Produkter for at få vist alle produkter, hvor fragtomkostningerne ligger over middelværdien plus standardafvigelsen for fragtomkostninger. Rækken Kriterier under feltet Fragt indeholder følgende udtryk:

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

Du kan bruge funktionerne DStDev og DStDevP i et beregnet feltudtryk i en forespørgsel eller i rækken Opdater til i en opdateringsforespørgsel.

Bemærk

Du kan bruge funktionerne DStDev og DStDevP eller funktionerne StDev og StDevP i et beregnet feltudtryk i en totalforespørgsel. Hvis du bruger funktionen DStDev eller DStDevP, beregnes værdierne, før dataene grupperes. Hvis du bruger funktionen StDev eller StDevP, grupperes dataene, før værdierne i feltudtrykket evalueres.

Brug funktionen DStDev og DStDevP i et beregnet kontrolelement, når du har brug for at angive kriterier for at begrænse det dataområde, hvor funktionen udføres. Hvis du f.eks. vil have vist standardafvigelsen for ordrer, der skal sendes til Californien, skal du angive egenskaben Kontrolelementkilde for et tekstfelt til følgende udtryk:

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

Hvis du blot vil finde standardafvigelsen på tværs af alle poster i domæne, skal du bruge funktionen StDev eller StDevP .

Tip Hvis datatypen for feltet, hvorfra udtryk er afledt, er et tal, returnerer funktionerne DStDev og DStDevP en dobbelt datatype. Hvis du bruger funktionen DStDev eller DStDevP i et beregnet kontrolelement, skal du medtage en funktion til konvertering af datatype i udtrykket for at forbedre ydeevnen.

Bemærk

Ikke-gemte ændringer i poster i domæne medtages ikke, når du bruger disse funktioner. Hvis du vil have, at funktionen DStDev eller DStDevP skal være baseret på de ændrede værdier, skal du først gemme ændringerne ved at klikke på Gem post under Poster på fanen Data, flytte fokus til en anden post eller ved hjælp af metoden Opdater.

Forespørgselseksempler

Udtryk Resultater
SELECT DStDev("enhedspris","produktSalg","enhedspris>140") SOM Udtryk1, DStDevP("enhedspris","produktSalg","enhedspris<140") SOM Udtryk2 FRA produktSalg GROUP BY DStDev("enhedspris","produktSalg","enhedspris>140"), DStDevP("enhedspris","produktSalg","enhedspris<140"); Beregner den Standard afvigelse fra "Enhedspris" (overvejer te givet data som stikprøve) fra tabellen "Produktsalg", hvor "enhedspris" er større end 140 og viser resultatet i Udtryk1. Beregner også den Standard afvigelse fra "Enhedspris" (under hensyntagen til de givne data som hele populationen), hvor "enhedspris" er mindre end 140 og viser resultaterne i Udtryk2.
SELECT DStDev("enhedspris","produktSalg","enhedspris>140") SOM DstDev, DStDevP("enhedspris","produktSalg","enhedspris<140") AS DstDevP FRA produktSalg GROUP BY DStDev("enhedspris","produktSalg","enhedspris>140"), DStDevP("enhedspris","produktSalg","enhedspris<140"); Beregner den Standard afvigelse fra "Enhedspris" (overvejer te givet data som stikprøve) fra tabellen "Produktsalg", hvor "enhedspris" er større end 140, og viser resultatet i DstDev. Beregner også den Standard afvigelse fra "Enhedspris" (i betragtning af de givne data som hele populationen), hvor "enhedspris" er mindre end 140 og viser resultaterne i DstDevP.

VBA-eksempel

Bemærk

Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.

I følgende eksempel returneres der estimater af standardafvigelsen for en population og et udsnit af en population for ordrer, der er sendt til Storbritannien. Domænet er en ordretabel. Argumentet kriterier begrænser resultatsættet af poster til dem, hvor værdien ShipCountryRegion er Storbritannien.

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

Det næste eksempel beregner de samme estimater ved hjælp af en variabel, strCountryRegion, i argumentet kriterier . Bemærk, at enkelte anførselstegn (') medtages i strengudtrykket, så når strengene sammenkædes, omsluttes strengkonstanten UK af enkelte anførselstegn.

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 & "'")